SpringBoot项目依赖配置示例,如何更新到最新版本讲解?

2026-05-26 01:421阅读0评论SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计2804个文字,预计阅读时间需要12分钟。

SpringBoot项目依赖配置示例,如何更新到最新版本讲解?

目录+maven依赖及配置+Spring项目依赖+SpringBoot项目+数据库相关+mysql+connector依赖+druid连接池集成到boot项目+c3p0连接池+ORM框架+缓存相关+redis集成到boot项目+Spring Cache+Jedis+安全框架

目录
  • maven依赖及一些配置
    • Spring
      • Spring项目的依赖
      • SpringBoot项目
    • 数据库相关
      • mysql - connector依赖
      • druid连接池–集成boot项目
      • c3p0 连接池
      • ORM框架
    • 缓存相关
      • redis 集成boot项目
      • Spring Cache
      • Jedis
    • 安全框架
      • shiro框架
    • 常用工具类
      • jwt 用户认证相关
      • 打包相关
      • Json 相关
      • 常用开发工具类
    • 接口文档相关
      • Swagger2依赖
      • knife4j
    • Servlet 依赖
      • Flink相关的依赖
        • flink
      • 日志
        • Logging-4j
      • 配置
        • SpringBoot项目配置文件application.yml
        • Swagger文档配置SwaggerConfig
      • mybatis-plus 配置
        • Response 常用的响应封装类
          • BaseException 基础异常类BaseException

          maven依赖及一些配置

          这里主要是搭建项目常用到的maven依赖以及搭建项目会需要用到的一些配置文件,可能下面这些依赖还不是很全,但是应该会满足日常大部分的需求了

          Spring

          Spring项目的依赖

          <!-- Spring框架 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.3.9</version> </dependency> <!-- AOP --> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1.9.7</version> </dependency>

          SpringBoot项目

          parent坐标

          <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.4.RELEASE</version> </parent>

          starter依赖

          <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency>

          web starter 依赖

          <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>

          devtoos依赖

          开启SpringBoot项目热部署

          <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency>

          数据库相关

          mysql - connector依赖

          <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.24</version> </dependency>

          druid连接池–集成boot项目

          <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.23</version> </dependency>

          c3p0 连接池

          <!-- C3P0连接池--> <dependency> <groupId>com.mchange</groupId> <artifactId>c3p0</artifactId> <version>0.9.5.2</version> </dependency>

          ORM框架

          MyBatis

          <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.6</version> </dependency>

          MyBatis 集成Spring

          <!-- MyBatis整合Spring --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.6</version> </dependency>

          MyBatis-plus依赖

          <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.2</version> </dependency>

          mybatis-plus代码生成器

          <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.2.0</version> </dependency>

          缓存相关

          redis 集成boot项目

          添加的是spring-data-redis的依赖

          <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>

          Spring Cache

          <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-cache</artifactId> </dependency>

          Jedis

          <!-- 使用JRedis来操作Redis--> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.8.0</version> </dependency>

          安全框架

          shiro框架

          <!--添加shiro框架--> <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-spring-boot-web-starter</artifactId> <version>1.9.0</version> </dependency>

          Spring Security

          <!--Spring security 依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency>

          常用工具类

          SpringBoot项目依赖配置示例,如何更新到最新版本讲解?

          jwt 用户认证相关

          <!--jwt依赖--> <dependency> <groupId>com.auth0</groupId> <artifactId>java-jwt</artifactId> <version>4.0.0</version> </dependency>

          打包相关

          spring-boot-loader依赖

          <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-loader</artifactId> </dependency>

          Json 相关

          org.json

          <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20160810</version> </dependency>

          fastjson

          <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.76</version> </dependency>

          常用开发工具类

          commons-lang

          <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.6</version> </dependency>

          lombok依赖

          <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.12</version> <scope>provided</scope> </dependency>

          junit测试工具类

          <!-- JUnit --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency>

          Http工具类

          普通的是一般的Http请求,第二个是异步请求的工具类

          <!-- 普通的HTTPCLIENT --> <dependency> <groupId>org.apache.mvnrepository.com/artifact/io.springfox/springfox-swagger-ui --> <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>swagger-bootstrap-ui</artifactId> <version>1.9.1</version> </dependency>

          knife4j

          <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>knife4j-spring-boot-starter</artifactId> <version>3.0.2</version> </dependency>

          Servlet 依赖

          <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.0.1</version> <scope>provided</scope> </dependency>

          Flink相关的依赖

          flink

          <!--<flink.version>1.12.1</flink.version>--> <!--<scala.binary.version>2.12</scala.binary.version>--> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-streaming-java_${scala.binary.version}</artifactId> <version>${flink.version}</version> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-clients_${scala.binary.version}</artifactId> <version>${flink.version}</version> </dependency>

          集成kafka

          <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-connector-kafka_${scala.binary.version}</artifactId> <version>${flink.version}</version> </dependency>

          日志

          Logging-4j

          <!--<log4j.version>2.12.1</log4j.version>--> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> <version>${log4j.version}</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>${log4j.version}</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>${log4j.version}</version> </dependency>

          配置

          SpringBoot项目配置文件application.yml

          # 运行端口 server: port: 9527 spring: # 激活的环境 profiles: active: dev application: name: reimbursementSystem servlet: multipart: max-file-size: 10MB max-request-size: 10MB datasource: # druid: # driver-class-name: com.mysql.cj.jdbc.Driver # url: jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true # username: root # password: 123456 # maxActive: 100 # initialSize: 10 # spring 默认的连接池 url: jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true username: root password: 123456 driver-class-name: com.mysql.cj.jdbc.Driver

          添加redis

          redis: host: localhost port: 6379 password: 123456 database: 0

          添加mybatis-plus

          mybatis-plus: configuration: #在映射实体或者属性时,将数据库中表名和字段名中的下划线去掉,按照驼峰命名法映射 map-underscore-to-camel-case: true log-impl: org.apache.ibatis.logging.stdout.StdOutImpl global-config: db-config: id-type: ASSIGN_ID

          添加Mybatis

          mybatis: mapper-location: classpath:/mapper/*.xml

          shiro

          shiro: loginUrl: /user/login

          Swagger文档配置SwaggerConfig

          @Configuration @EnableSwagger2 public class SwaggerConfig { /** * 配置docket以配置Swagger具体参数 * @return 返回一个docket配置参数 */ @Bean public Docket docket(){ return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() .apis(RequestHandlerSelectors.basePackage("com.group.reimbursement.controller")) .paths(PathSelectors.any()) .build(); } /** * Api的信息 * @return ApiInfo */ private ApiInfo apiInfo(){ Contact contact = new Contact("张连勇、林良怀","blog.csdn.net/zly03?spm=1000.2115.3001.5343","lyzhang@163.com"); return new ApiInfoBuilder() .title("发票管理系统") .version("1.0.2") .description("接口文档") .contact(contact) .build(); } }

          添加静态资源过滤,如果有添加过滤器和拦截器,也需要在拦截器或者过滤器中放行相关的url*

          /** * 设置静态资源 * @param registry ResourceHandlerRegistry */ @Override protected void addResourceHandlers(ResourceHandlerRegistry registry) { log.info("开始进行静态资源映射..."); registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/"); registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/"); registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/"); }

          相关的url

          .excludePathPatterns("/doc.html/**") .excludePathPatterns("/swagger-ui.html/**") .excludePathPatterns("/webjars/**")

          mybatis-plus 配置

          /** * 配置分页插件 * *@author zhanglianyong *@date 2022/8/5 */ @Configuration public class MybatisPlusConfig { @Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor(); mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor()); return mybatisPlusInterceptor; } }

          Response 常用的响应封装类

          /** * 返回对象 * *@author zhanglianyong *@date 2022/8/5 */ @Data @ApiModel("统一返回类") public class Response<T> implements Serializable { /** * 编码:1成功,0和其它数字为失败 */ @ApiModelProperty("状态码,统一200为成功") private Integer code; /** * 错误信息 */ @ApiModelProperty("返回信息,错误信息") private String message; /** * 数据 */ @ApiModelProperty("返回数据") private T data; /** * 动态数据 */ @ApiModelProperty("动态数据") private Map<String, Object> map = new HashMap<>(); public Response() { } public static <T> Response<T> successWithMessage(String message) { Response<T> r = new Response<>(); r.message = message; r.data = null; r.code = HttpStatus.OK.value(); return r; } public static <T> Response<T> success(T object) { Response<T> r = new Response<>(); r.data = object; r.code = HttpStatus.OK.value(); return r; } public static Response<String> buildJsonString(Object object) throws JsonProcessingException { String jsonString = toJsonString(object); return Response.success(jsonString); } private static String toJsonString(Object object) throws JsonProcessingException { ObjectMapper mapper = new ObjectMapper(); DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); mapper.setDateFormat(df); return mapper.writeValueAsString(object); } public static <T> Response<T> error(String message, int code) { Response<T> r = new Response<>(); r.message = message; r.code = code; return r; } public static <T> Response<T> common(int code, String message) { Response<T> result = new Response<>(); result.setCode(code); result.setMessage(message); return result; } public Integer getCode() { return code; } public void setCode(Integer code) { this.code = code; } public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } public T getData() { return data; } public void setData(T data) { this.data = data; } public Response(Integer code, String message, T data) { this.code = code; this.message = message; this.data = data; } }

          BaseException 基础异常类BaseException

          /** * 基础异常 * *@author zhanglianyong *@date 2022/8/4 */ public class BaseException extends RuntimeException { private static final long serialVersionUID = 1L; /** * 编码:1成功,0和其它数字为失败 */ private Integer code; /** * 错误信息 */ private String message; public BaseException(String message) { this.message = message; } public BaseException(String message, Throwable cause, Integer code, String message1) { super(message, cause); this.code = code; this.message = message1; } public BaseException(String message, Integer code) { this.code = code; this.message = message; } public Integer getCode() { return code; } public void setCode(Integer code) { this.code = code; } @Override public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } }

          到此这篇关于SpringBoot项目依赖和配置的文章就介绍到这了,更多相关SpringBoot项目依赖内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!

          本文共计2804个文字,预计阅读时间需要12分钟。

          SpringBoot项目依赖配置示例,如何更新到最新版本讲解?

          目录+maven依赖及配置+Spring项目依赖+SpringBoot项目+数据库相关+mysql+connector依赖+druid连接池集成到boot项目+c3p0连接池+ORM框架+缓存相关+redis集成到boot项目+Spring Cache+Jedis+安全框架

          目录
          • maven依赖及一些配置
            • Spring
              • Spring项目的依赖
              • SpringBoot项目
            • 数据库相关
              • mysql - connector依赖
              • druid连接池–集成boot项目
              • c3p0 连接池
              • ORM框架
            • 缓存相关
              • redis 集成boot项目
              • Spring Cache
              • Jedis
            • 安全框架
              • shiro框架
            • 常用工具类
              • jwt 用户认证相关
              • 打包相关
              • Json 相关
              • 常用开发工具类
            • 接口文档相关
              • Swagger2依赖
              • knife4j
            • Servlet 依赖
              • Flink相关的依赖
                • flink
              • 日志
                • Logging-4j
              • 配置
                • SpringBoot项目配置文件application.yml
                • Swagger文档配置SwaggerConfig
              • mybatis-plus 配置
                • Response 常用的响应封装类
                  • BaseException 基础异常类BaseException

                  maven依赖及一些配置

                  这里主要是搭建项目常用到的maven依赖以及搭建项目会需要用到的一些配置文件,可能下面这些依赖还不是很全,但是应该会满足日常大部分的需求了

                  Spring

                  Spring项目的依赖

                  <!-- Spring框架 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.3.9</version> </dependency> <!-- AOP --> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1.9.7</version> </dependency>

                  SpringBoot项目

                  parent坐标

                  <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.4.RELEASE</version> </parent>

                  starter依赖

                  <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency>

                  web starter 依赖

                  <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>

                  devtoos依赖

                  开启SpringBoot项目热部署

                  <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency>

                  数据库相关

                  mysql - connector依赖

                  <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.24</version> </dependency>

                  druid连接池–集成boot项目

                  <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.23</version> </dependency>

                  c3p0 连接池

                  <!-- C3P0连接池--> <dependency> <groupId>com.mchange</groupId> <artifactId>c3p0</artifactId> <version>0.9.5.2</version> </dependency>

                  ORM框架

                  MyBatis

                  <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.6</version> </dependency>

                  MyBatis 集成Spring

                  <!-- MyBatis整合Spring --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>2.0.6</version> </dependency>

                  MyBatis-plus依赖

                  <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.2</version> </dependency>

                  mybatis-plus代码生成器

                  <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-generator</artifactId> <version>3.2.0</version> </dependency>

                  缓存相关

                  redis 集成boot项目

                  添加的是spring-data-redis的依赖

                  <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>

                  Spring Cache

                  <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-cache</artifactId> </dependency>

                  Jedis

                  <!-- 使用JRedis来操作Redis--> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.8.0</version> </dependency>

                  安全框架

                  shiro框架

                  <!--添加shiro框架--> <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-spring-boot-web-starter</artifactId> <version>1.9.0</version> </dependency>

                  Spring Security

                  <!--Spring security 依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency>

                  常用工具类

                  SpringBoot项目依赖配置示例,如何更新到最新版本讲解?

                  jwt 用户认证相关

                  <!--jwt依赖--> <dependency> <groupId>com.auth0</groupId> <artifactId>java-jwt</artifactId> <version>4.0.0</version> </dependency>

                  打包相关

                  spring-boot-loader依赖

                  <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-loader</artifactId> </dependency>

                  Json 相关

                  org.json

                  <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20160810</version> </dependency>

                  fastjson

                  <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.76</version> </dependency>

                  常用开发工具类

                  commons-lang

                  <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.6</version> </dependency>

                  lombok依赖

                  <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.12</version> <scope>provided</scope> </dependency>

                  junit测试工具类

                  <!-- JUnit --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency>

                  Http工具类

                  普通的是一般的Http请求,第二个是异步请求的工具类

                  <!-- 普通的HTTPCLIENT --> <dependency> <groupId>org.apache.mvnrepository.com/artifact/io.springfox/springfox-swagger-ui --> <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>swagger-bootstrap-ui</artifactId> <version>1.9.1</version> </dependency>

                  knife4j

                  <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>knife4j-spring-boot-starter</artifactId> <version>3.0.2</version> </dependency>

                  Servlet 依赖

                  <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.0.1</version> <scope>provided</scope> </dependency>

                  Flink相关的依赖

                  flink

                  <!--<flink.version>1.12.1</flink.version>--> <!--<scala.binary.version>2.12</scala.binary.version>--> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-streaming-java_${scala.binary.version}</artifactId> <version>${flink.version}</version> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-clients_${scala.binary.version}</artifactId> <version>${flink.version}</version> </dependency>

                  集成kafka

                  <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-connector-kafka_${scala.binary.version}</artifactId> <version>${flink.version}</version> </dependency>

                  日志

                  Logging-4j

                  <!--<log4j.version>2.12.1</log4j.version>--> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> <version>${log4j.version}</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>${log4j.version}</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>${log4j.version}</version> </dependency>

                  配置

                  SpringBoot项目配置文件application.yml

                  # 运行端口 server: port: 9527 spring: # 激活的环境 profiles: active: dev application: name: reimbursementSystem servlet: multipart: max-file-size: 10MB max-request-size: 10MB datasource: # druid: # driver-class-name: com.mysql.cj.jdbc.Driver # url: jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true # username: root # password: 123456 # maxActive: 100 # initialSize: 10 # spring 默认的连接池 url: jdbc:mysql://localhost:3306/test?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true username: root password: 123456 driver-class-name: com.mysql.cj.jdbc.Driver

                  添加redis

                  redis: host: localhost port: 6379 password: 123456 database: 0

                  添加mybatis-plus

                  mybatis-plus: configuration: #在映射实体或者属性时,将数据库中表名和字段名中的下划线去掉,按照驼峰命名法映射 map-underscore-to-camel-case: true log-impl: org.apache.ibatis.logging.stdout.StdOutImpl global-config: db-config: id-type: ASSIGN_ID

                  添加Mybatis

                  mybatis: mapper-location: classpath:/mapper/*.xml

                  shiro

                  shiro: loginUrl: /user/login

                  Swagger文档配置SwaggerConfig

                  @Configuration @EnableSwagger2 public class SwaggerConfig { /** * 配置docket以配置Swagger具体参数 * @return 返回一个docket配置参数 */ @Bean public Docket docket(){ return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() .apis(RequestHandlerSelectors.basePackage("com.group.reimbursement.controller")) .paths(PathSelectors.any()) .build(); } /** * Api的信息 * @return ApiInfo */ private ApiInfo apiInfo(){ Contact contact = new Contact("张连勇、林良怀","blog.csdn.net/zly03?spm=1000.2115.3001.5343","lyzhang@163.com"); return new ApiInfoBuilder() .title("发票管理系统") .version("1.0.2") .description("接口文档") .contact(contact) .build(); } }

                  添加静态资源过滤,如果有添加过滤器和拦截器,也需要在拦截器或者过滤器中放行相关的url*

                  /** * 设置静态资源 * @param registry ResourceHandlerRegistry */ @Override protected void addResourceHandlers(ResourceHandlerRegistry registry) { log.info("开始进行静态资源映射..."); registry.addResourceHandler("doc.html").addResourceLocations("classpath:/META-INF/resources/"); registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/"); registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/"); }

                  相关的url

                  .excludePathPatterns("/doc.html/**") .excludePathPatterns("/swagger-ui.html/**") .excludePathPatterns("/webjars/**")

                  mybatis-plus 配置

                  /** * 配置分页插件 * *@author zhanglianyong *@date 2022/8/5 */ @Configuration public class MybatisPlusConfig { @Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor(); mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor()); return mybatisPlusInterceptor; } }

                  Response 常用的响应封装类

                  /** * 返回对象 * *@author zhanglianyong *@date 2022/8/5 */ @Data @ApiModel("统一返回类") public class Response<T> implements Serializable { /** * 编码:1成功,0和其它数字为失败 */ @ApiModelProperty("状态码,统一200为成功") private Integer code; /** * 错误信息 */ @ApiModelProperty("返回信息,错误信息") private String message; /** * 数据 */ @ApiModelProperty("返回数据") private T data; /** * 动态数据 */ @ApiModelProperty("动态数据") private Map<String, Object> map = new HashMap<>(); public Response() { } public static <T> Response<T> successWithMessage(String message) { Response<T> r = new Response<>(); r.message = message; r.data = null; r.code = HttpStatus.OK.value(); return r; } public static <T> Response<T> success(T object) { Response<T> r = new Response<>(); r.data = object; r.code = HttpStatus.OK.value(); return r; } public static Response<String> buildJsonString(Object object) throws JsonProcessingException { String jsonString = toJsonString(object); return Response.success(jsonString); } private static String toJsonString(Object object) throws JsonProcessingException { ObjectMapper mapper = new ObjectMapper(); DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); mapper.setDateFormat(df); return mapper.writeValueAsString(object); } public static <T> Response<T> error(String message, int code) { Response<T> r = new Response<>(); r.message = message; r.code = code; return r; } public static <T> Response<T> common(int code, String message) { Response<T> result = new Response<>(); result.setCode(code); result.setMessage(message); return result; } public Integer getCode() { return code; } public void setCode(Integer code) { this.code = code; } public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } public T getData() { return data; } public void setData(T data) { this.data = data; } public Response(Integer code, String message, T data) { this.code = code; this.message = message; this.data = data; } }

                  BaseException 基础异常类BaseException

                  /** * 基础异常 * *@author zhanglianyong *@date 2022/8/4 */ public class BaseException extends RuntimeException { private static final long serialVersionUID = 1L; /** * 编码:1成功,0和其它数字为失败 */ private Integer code; /** * 错误信息 */ private String message; public BaseException(String message) { this.message = message; } public BaseException(String message, Throwable cause, Integer code, String message1) { super(message, cause); this.code = code; this.message = message1; } public BaseException(String message, Integer code) { this.code = code; this.message = message; } public Integer getCode() { return code; } public void setCode(Integer code) { this.code = code; } @Override public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } }

                  到此这篇关于SpringBoot项目依赖和配置的文章就介绍到这了,更多相关SpringBoot项目依赖内容请搜索自由互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持自由互联!