SpringBoot之MVC配置(WebMvcConfigurer详解)

这篇具有很好参考价值的文章主要介绍了SpringBoot之MVC配置(WebMvcConfigurer详解)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一:基本介绍

  Spring MVC是一种常用的Java Web框架,它提供了一种基于MVC模式的开发方式,可以方便地实现Web应用程序。在Spring MVC中,WebMvcConfigurer是一种常用的配置方式,可以允许我们自定义Spring MVC的行为,比如添加拦截器、消息转换器等。在本文中,我们将介绍什么是WebMvcConfigurer,以及如何使用它来自定义Spring MVC的配置。可以看到WebMvcConfigurer是一个非常灵活和强大的工具,它可以让我们实现自己的业务需求并提高代码的可读性和可维护性。而且我们在Spring、SpringBoot都可以很简单的使用WebMvcConfigurer,下面主要在SpringBoot中说明配置

1:提示说明

  其实在Spring Boot 1.5版本都是靠重写WebMvcConfigurerAdapter的方法来添加自定义拦截器,消息转换器等。但是到了SpringBoot 2.0之后,WebMvcConfigurerAdapter被标记为@Deprecated(弃用)。官方推荐直接实现WebMvcConfigurer或者直接继承WebMvcConfigurationSupport,这两种区别如下:(具体参考官方API:6.0.9

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

WebMvcConfigurer和WebMvcConfigurationSupport都是Spring MVC中的组件,它们都可以用于配置Spring MVC的一些特性。
具体的区别如下:
    ①:实现方式不同:
        WebMvcConfigurer:
            是一个接口,它提供了多个回调方法,可以用于自定义Spring MVC的配置(如消息转换器、拦截器等)。我们在使用时只需要实现
            该接口,重写其中的方法即可。
        WebMvcConfigurationSupport:
            是一个抽象类,它也提供了多个回调方法,用于自定义Spring MVC的配置,但是需要继承该类并重写其中的方法。
    ②:作用不同:
        WebMvcConfigurer:
            主要用于添加或修改Spring MVC的配置,如添加拦截器,自定义消息转换器等。
        WebMvcConfigurationSupport:
            主要用于完全自定义Spring MVC的配置,如果我们需要对Spring MVC的配置进行大量的自定义,可以选择继承该类并重写其中的
            方法。但是需要注意的是,继承该类会覆盖Spring MVC的部分默认配置。
            因此,当我们只需要对部分配置进行自定义时,应该使用WebMvcConfigurer。
    ③:继承关系不同
        WebMvcConfigurer:
            没有继承关系,我们只需要实现该接口即可使用。
        WebMvcConfigurationSupport:
            是一个抽象类,需要继承后才能使用。
总结:在日常开发中推荐优先使用WebMvcConfigurer的方式,因为简单方便,也没有特别复杂的定制需求;
     若我们项目中使用的MVC存在着更加复杂的配置需求推荐WebMvcConfigurationSupport,通过继承此类,我们可以说对官方的MVC代码进行
     重写操作,但是因为其配置量较大,实现比较复杂,因此在日常开发中使用WebMvcConfigurationSupport并不常见。

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

2:MVC配置简要

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

说MVC配置,其实就是说在WebMvcConfigurer接口提供了很多种自定义配置,需要我们自定义配置,其常用配置如下:
    1:addInterceptors(拦截器配置)
        这个方法可用于配置拦截器。
    2:addCorsMappings(全局跨域处理)
        这个方法用来配置跨域访问的规则。
    3:addViewControllers(注册视图控制器)
        这个方法可以注册一个或多个视图控制器,让我们写的地址可以对应一个资源文件,如html文件
    4:addResourceHandlers(配置静态资源处理)
        方法可用于配置静态资源处理器。可以在客户端直接访问静态资源信息

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

3:Spring和SpringBoot配置WebMvcConfigurer区别

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

Spring中配置WebMvcConfigurer方式:
    ①:创建一个 Java 类,并实现WebMvcConfigurer接口
        @Configuration
        public class MyWebMvcConfig implements WebMvcConfigurer {
            // 自定义配置代码
        }
    ②:注入到Bean容器里
        @Configuration
        public class AppConfig {
            @Bean
            public MyWebMvcConfig myWebMvcConfig() {
                return new MyWebMvcConfig();
            }
        }
SpringBoot中配置WebMvcConfigurer方式:(这种方式简单)
    ①:创建一个 Java 类,并实现WebMvcConfigurer接口就可以了
            @Configuration
            public class MyWebMvcConfig implements WebMvcConfigurer {
                // 自定义配置代码
            }

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

回到目录 ↑↑↑

二:拦截器配置(addInterceptors)

  在SpringBoot中,我们可以使用拦截器来对请求进行统一的预处理或后处理。拦截器可以用于日志记录、权限检查、性能监控、事务控制等方面,是一个非常重要的组件。要在SpringBoot中实现拦截器,则首先要创建一个实现HandlerInterceptor接口的拦截器类。该接口定义了三个方法,分别是preHandle、postHandle和afterCompletion,用于在请求处理前、请求处理后和请求完成后进行处理。

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

HandlerInterceptor接口方法详解:
    ①:preHandler
        在请求处理之前被调用。该方法在Interceptor类中最先执行,用来进行一些前置初始化操作或是对当前请求做预处理,
        也可以进行一些判断来决定请求是否要继续进行下去。该方法的返回值是Boolean类型,当它返回false时,表示请求结束,
        后续的Interceptor和Controller都不会再执行;当它返回为true时会继续调用下一个Interceptor的preHandle方法,
        如果已经是最后一个Interceptor的时候就会调用当前请求的Controller方法。
    ②:postHandler
        在请求处理完成之后调用。也就是Controller方法调用之后执行,但是它会在DispatcherServlet进行视图返回渲染之前被调用,
        所以我们可以在这个方法中对Controller处理之后的ModelAndView对象进行操作。
    ③:afterCompletion
        在整个请求结束后调用。就是对应的Interceptor类的postHandler方法返回true时才执行。就是说该方法将在整个请求结束之后,
        也就是在DispatcherServlet渲染了对应的视图之后执行。此方法主要用来进行资源清理。
注:官方其实不建议我们非要把3个方法都重写,我们只要对需要的方法重写接口,就比如大部分项目只需要重写preHandler方法

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

 示例代码 实现拦截器接口(用于配置拦截器)

    我们配置完拦截器之后,这时拦截器只是一个未被注册的普通类,这时需要把一个或者多个拦截器注册到WebMvcConfigurer

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

InterceptorRegistry类方法介绍:
    ①:addInterceptor
        该方法用于向拦截器链中添加一个拦截器。interceptor参数为待添加的拦截器对象,可以是自定义的拦截器类或Spring提供的预置
        拦截器。返回值为InterceptorRegistration对象,用于进一步配置该拦截器的属性。
    ②:addWebRequestInterceptor
        该方法用于向WebRequest拦截器链中添加一个拦截器。interceptor参数为待添加的拦截器对象,
        可以是自定义的WebRequestInterceptor类或者Spring提供的预置拦截器。
        也是返回值为InterceptorRegistration对象,用于进一步配置该拦截器的属性。
    ③:getInterceptors
        用于获取当前已经添加到拦截器链中的所有拦截器,返回值为List<HandlerInterceptor>对象,表示拦截器列表。
InterceptorRegistration类方法介绍:
    ①:order
        该方法用于设置拦截器的执行顺序,即在拦截器链中的位置。order参数为一个整数,值越小表示越先执行。
    ②:addPathPatterns
        该方法用于设置需要拦截的请求路径模式,即满足哪些请求路径时才会触发该拦截器。若"/**"则拦截全部;
        传入的参数是一个字符串数组,包含多个Ant风格的路径模式,例如 "/api/**"、"/user/*"等。
    ③:excludePathPatterns
        该方法用于设置不需要拦截的请求路径模式,即满足哪些请求路径时不会触发该拦截器。一般不拦截,如登录或者Swagger等
        传入的参数是一个字符串数组,包含多个Ant风格的路径模式,例如 "/api/login"、"/user/login"等。
    ④:pathMatcher
        该方法用于设置该拦截器所使用的PathMatcher实例,从而可以自定义路径匹配逻辑。

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

 示例代码 在WebMvcConfigurer类上注册创建的拦截器

  注:拦截的路径或者放行的路径是以Controller开始的,如我们在application.yml配置的地址前缀则不包含

回到目录 ↑↑↑

三:跨域配置(addCorsMappings)

  如何是跨域,大家应该都了解,这里我将在WebMvcConfigurer中解决跨域问题,其实跨域的解决方式很多,这里我就简单说明,具体参考:SpringBoot如何解决跨域的三种方式

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

CorsRegistry类方法介绍:
    ①:addMapping
        该方法用于添加允许跨域访问的路径,String类型,若存在多个路径则需要在CorsRegistry里配置多个
CorsRegistration类方法介绍:
    CorsRegistration是CorsRegistry的辅助类,使用它可以对单个跨域请求进行更细粒度的配置。
    ①:allowedOrigins(低版本使用,但是现在高版本也支持)
        设置允许跨域请求的来源URL。该方法接受多个参数,每个参数为一个允许的来源URL。或者设置"*"
    ②:allowedOriginPatterns(一般使用这种方式)
        设置允许跨域请求的来源URL的模式。该方法接受多个参数,每个参数为一个允许的来源URL模式。或者设置"*"
    ③:allowCredentials
        设置是否允许跨域请求携带凭证信息。默认情况下,浏览器不会向跨域请求发送Cookie等凭证信息。
        如果希望携带凭证信息,则需要将allowCredentials方法设置为true。
    ④:allowedMethods
        设置允许跨域请求的HTTP方法。该方法接受多个参数,每个参数为一种允许的HTTP请求方式。
    ⑤:allowedHeaders
        设置允许请求携带的HTTP头信息。该方法接受多个参数,每个参数为一种允许的HTTP头信息。(放行哪些请求头部信息)
    ⑥:exposedHeaders
        设置响应头信息,这些信息允许客户端访问。该方法接受多个参数,每个参数为一种允许的响应头信息。(暴露哪些响应头信息)
    ⑦:combine
        将当前CorsRegistration对象与另一个CorsConfiguration对象合并,返回合并后的CorsConfiguration对象。
        可以使用该方法将多个CorsRegistration对象的配置合并到同一个CorsConfiguration对象中。
    ⑧:maxAge
        设置响应的缓存时间,单位为秒,默认30分钟。
        例如,当设置maxAge为3600时,如果浏览器在一小时内再次向同一个目标URL发送跨域请求,
        就可以直接使用以前的预检请求结果,而不需要再次进行预检请求。maxAge属性只影响预检请求的缓存时间,
        而不会影响正常的跨域请求,因此不会对实际的业务逻辑产生影响。此外,maxAge属性的具体值需要根据实际情况进行调整,
        过小的缓存时间可能会导致频繁的预检请求,过大的缓存时间可能会使跨域请求的控制权得不到及时更新,从而增加安全风险。

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

 测试跨域请求发送(直接启动这个html,配置可能跨域的地址即可)

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

 示例代码 跨域放行代码配置

回到目录 ↑↑↑

四:注册页面跳转(addViewControllers)

  addViewControllers方法是SpringMVC中WebMvcConfigurer接口定义的一个方法,用于注册一个简单的视图控制器,以便将请求路径映射到一个具体的视图页面。在一些简单的场景下,我们可能只需要将某个请求路径直接映射到一个固定的视图页面,而不需要进行额外的逻辑处理。此时,可以使用addViewControllers方法来快速注册一个视图控制器,并指定对应的请求路径和视图名称即可。但是我们需要额外注意的是,我们在SpringBoot中处理视图跳转时最好集成Thymeleaf,因为它是SpringBoot指定认可的并且,Thymeleaf与SpringMVC协同工作,可以方便地实现快速开发Web应用程序。

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

在SpringBoot配置Thymeleaf的一些信息:
导入Thymeleaf坐标:
    <!--导入SpringBoot集成Thymeleaf启动器-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-thymeleaf</artifactId>
    </dependency>
在application.yml配置Thymeleaf配置信息:
    spring:
       # 配置Thymeleaf模板(默认启动会请求/templates/index.html)
      thymeleaf:
        cache: false                      # 是否有模板缓存
        prefix: classpath:/templates/     # 模板放置的位置
        suffix: .html                     # 模板后缀
        mode: HTML                        # 模板类型
        encoding: UTF-8                   # 模板编码

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

  配置完基本的信息后我们就可以进行资源视图的跳转了,如下一些基本介绍:

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

ViewControllerRegistry类说明:
    ①:addViewController(String urlPath)
        通过urlPath参数指定的请求URL路径(例如"/home")注册一个简单的视图控制器,
        该方法返回一个ViewControllerRegistration对象,通过该对象可以设置相关属性,如视图名称、请求方式等。
        如:registry.addViewController("/login");
    ②:setOrder(int order)
        设置当前视图控制器的执行顺序,当有多个视图控制器针对同一请求路径时,可以使用该方法进行优先级排序。
        默认情况下,不同的视图控制器按照它们被注册的顺序执行。
    ③:addRedirectViewController(String urlPath, String redirectUrl)
        注册一个重定向视图控制器,将urlPath请求路径重定向到指定的重定向地址redirectUrl。
        如:registry.addRedirectViewController("/toBaidu","https://www.baidu.com");
ViewControllerRegistration类说明:
  ①:setViewName(String viewName)
        资源路径的前缀
  ②:setStatusCode(HttpStatus statusCode)
        配置访问不存在资源的响应码,如下常见的:
            HttpStatus.BAD_REQUEST:请求参数错误或格式不正确,例如缺少必需参数、参数类型错误等。
            HttpStatus.UNAUTHORIZED:未经授权访问,需要用户登录或提供凭证。
            HttpStatus.FORBIDDEN:已经授权但访问被禁止,通常意味着权限不足或需要进行进一步身份验证。
            HttpStatus.NOT_FOUND:请求的资源不存在,通常使用自定义的404错误页面进行提示。
            HttpStatus.METHOD_NOT_ALLOWED:请求方式不支持,例如GET请求访问只支持POST的接口时会返回405错误。
            HttpStatus.INTERNAL_SERVER_ERROR:服务器内部错误,需要在后台进行排查和修复。
        示例:registry.addViewController("/**").setStatusCode(HttpStatus.NOT_FOUND);
            说明:访问不存在的页面我一律按照404处理,但是我们templates/error/404.html页面需要存在
说明:按照我们之前配置的thymeleaf配置来说,默认根路径为resources/templates,跳转的资源文件都是.html文件

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

 示例代码 注册页面跳转配置

回到目录 ↑↑↑

五:配置静态资源处理(addResourceHandlers)

  addResourceHandlers方法是SpringMVC框架提供的一种配置静态资源的方式,它可以将指定的资源路径映射到一个或多个URL路径上,并指定资源的缓存策略、版本号以及是否允许目录列表等选项。具体来说,addResourceHandlers方法需要传入一个ResourceHandlerRegistry对象作为参数,然后在这个对象上调用addResourceHandler方法,来添加一个或多个处理器。

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

ResourceHandlerRegistry类方法介绍:
    ①:addResourceHandler
        该方法用于指定静态资源的URL路径,支持Ant风格的通配符,如“/resources/**”表示匹配所有以“/resources/”开头的请求。
ResourceHandlerRegistration类方法介绍:
    ①:addResourceLocations
        该方法为静态资源所在的物理路径或URL。可以使用多个addResourceLocations方法指定多个路径,如下例:
        registry.addResourceHandler("/resources/**")
                .addResourceLocations("classpath:/static/", "file:/opt/files/")
        说明:
            classpath:/static/表示在项目的Classpath下(即src/main/resources文件夹下)查找static文件夹,
            file:/opt/files/表示在系统中的/opt/files/目录下查找文件。
    ②:setCacheControl
        此方法用于设置缓存控制头(cache-control header),CacheControl是一个封装了缓存策略的类。例如:
        CacheControl cc = CacheControl.maxAge(30, TimeUnit.DAYS).cachePublic();
        registry.addResourceHandler("/resources/**").addResourceLocations("classpath:/static/")
                .setCacheControl(cc);
        说明:这将指示浏览器缓存静态资源30天,并且它们是public缓存,意味着中间代理服务器也可以缓存资源。
    ③:setCachePeriod
        该方法用于设置静态资源缓存时间,参数类型为Duration类型。如:
        registry.addResourceHandler("/resources/**").addResourceLocations("classpath:/static/")
                .setCachePeriod(Duration.ofMinutes(5));
        说明:静态资源缓存的过期时间为5分钟
    ④:setOptimizeLocations
        此方法用于启用或禁用位置优化。如果启用位置优化,则将优化静态资源的位置,以便并发访问静态资源时可以获得更好的性能。
        默认情况下,位置优化是禁用的。
    ⑤:setUseLastModified
        此方法用于启用或禁用上次修改时间检查(last-modified check)。如果启用上次修改时间检查,则在每个请求中发送一
        个if-modified-since头,以检查是否需要返回新内容。默认情况下,上次修改时间检查是启用的。
    ⑥:resourceChain
        用于开启或关闭ResourceChain模式。当开启ResourceChain模式时,每个资源文件都会自动添加版本号,避免浏览器缓存问题。
        例如:registry.addResourceHandler("/resources/**").addResourceLocations("classpath:/static/")
                .resourceChain(true);
        请注意,要使ResourceChain生效,还需要设置addResolver
        如:.resourceChain(false)
            // 添加VersionResourceResolver,且指定版本号
            .addResolver(new VersionResourceResolver()
                    .addFixedVersionStrategy("1.0.0", "/**"));
            下次访问地址:http://localhost:8881/resources/1.0.0/xxx.css

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

webmvcconfigurer,自动驾驶,单片机,嵌入式硬件,python,开发语言

 示例代码 配置静态资源处理

其实还有许许多多的配置信息,后面会慢慢补充。文章来源地址https://www.toymoban.com/news/detail-691204.html

到了这里,关于SpringBoot之MVC配置(WebMvcConfigurer详解)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • springboot 项目访问静态资源遇到的问题,WebMvcConfigurer和WebMvcConfigurationSupport

    之前发过通过继承WebMvcConfigurationSupport来访问静态资源的文章——img标签访问静态资源,代码如下 这个方法是可行的,但会带来一个小问题。 像这些本身就要访问静态资源的,它们一般是实现了WebMvcConfigurer,而不是继承WebMvcConfigurationSupport。 当我们用上面代码中的方法访问

    2024年01月21日
    浏览(60)
  • 【SpringBoot】WebMvcConfigurer实现类不被加载(o.s.web.servlet.PageNotFound : No mapping for GET)的问题解决

    运行springboot项目的时候发现,明明访问的是一个页面,但是却被当作一个请求去处理了。 那么可以考虑到应该是资源文件没有被加载,或者说资源文件的映射没有被加载。 所以问题肯定可以缩小到是WebMvcConfigurer的实现类或者WebMvcConfigurationSupport的子类中的加载资源文件的方

    2024年02月14日
    浏览(41)
  • onceperrequestfilter 和 webmvcconfigurer 区别

    在使用Spring框架进行Web开发的时候,我们经常会遇到需要对每个请求做一些统一的处理的情况。例如,我们可能需要在每个请求到达Controller之前进行身份验证,或者在每个请求结束后记录请求的日志信息。这时候,我们可以使用两种不同的方式来实现这些功能:onceperrequest

    2024年02月06日
    浏览(29)
  • What is `WebMvcConfigurer` does?

    WebMvcConfigurer 用于自定义和扩展 SpringMVC 的功能配置。 比如:可以配置如视图解析器、静态资源处理、消息转换器、拦截器等MVC相关的组件。 实现 WebMvcConfigurer 接口,并使用 @Configuration 注解标记,使其成为一个配置类 [实践总结] 拦截器配置(Interceptors) 视图控制器(View C

    2024年01月16日
    浏览(41)
  • What is `addFormattersdoes` in `WebMvcConfigurer` ?

    addFormatters 方法在 SpringMVC 框架中主要用于向 Spring容器 注册自定义的 格式化器(Formatter) SpringMVC 内置了一系列的标准格式化器,用于处理日期、数字和其他常见类型的转换。 开发者也可以通过实现 WebMvcConfigurer 接口,并重写其中的 addFormatters 方法来添加 自定义格式化器 。

    2024年01月18日
    浏览(41)
  • What is `addArgumentResolvers` does in `WebMvcConfigurer` ?

    addArgumentResolvers 在 SpringMVC 框架中,主要用于向 Spring容器 注册自定义的参数解析器。在处理 HTTP请求 时, SpringMVC 会使用这些参数解析器将请求中的数据(如查询参数、路径变量、表单数据等)转换并注入到控制器方法的参数中。 http://localhost:8080/customDateArgumentResolver?date=20

    2024年02月01日
    浏览(108)
  • 37、springboot 为 spring mvc 提供的自动配置及对自动配置的一些自定义定制(大体思路)

    如果觉得springboot对spring mvc 的一些自动配置不满意,我们还可以对这些自动配置进行定制。 ▲ 定制方式一: 代码演示: 若要在保留自动配置的基础上增加一些自定义的Spring MVC配置,可以这些写,这里只是弄个框架。 ▲ 定制方式二: 代码演示: ▲ 定制方式三: 代码演示

    2024年02月11日
    浏览(37)
  • 43、基于 springboot 自动配置的 spring mvc 错误处理,就是演示项目报错后,跳转到自定义的错误页面

    Spring MVC 的错误处理:基于 SpringBoot 自动配置之后的 Spring MVC 错误处理。 就是访问方法时出错,然后弄个自定义的错误页面进行显示。 方式一: 基于Spring Boot自动配置的错误处理方式,只要通过属性文件即可配置错误处理行为。 提供自定义的错误页面即可。 方式二: 使用

    2024年02月10日
    浏览(49)
  • SpringBoot源码分析(1)--@SpringBootApplication注解使用和原理/SpringBoot的自动配置原理详解

    springboot原理索引 SpringBoot源码分析(1)–@SpringBootApplication注解使用和原理/SpringBoot的自动配置原理详解 SpringBoot源码分析(2)–SpringBoot启动源码(万字图文源码debug讲解springboot启动原理) 本文主要讲解@SpringBootApplication注解使用和原理。 源码基于spring-boot-2.2.13.RELEASE进行讲解 主要是

    2024年02月13日
    浏览(42)
  • 【六】SpringBoot集成MyBatis-yml自动化配置原理详解

            简介:spring boot整合mybatis开发web系统目前来说是市面上主流的框架,每个Java程序和springboot mybatis相处的时间可谓是比和自己女朋友相处的时间都多,但是springboot mybatis并没有得到你的真爱,因为你只是为了养活你女朋友而委曲求全的和spring boot mybatis假意相处。和

    2024年02月10日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包