搭建SpringBoot项目依赖和配置快速篇

2022年12月6日08:25:35

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>

常用工具类

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.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.5.6</version></dependency><!-- 异步的高效的HTTPCLIENT --><dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpasyncclient</artifactId><version>4.1.4</version></dependency>

接口文档相关

Swagger2依赖

添加了Swagger依赖和更换Swagger依赖的默认UI,采用了bootstrap-ui面板

<dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.7.0</version></dependency><!-- https://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:9527spring:#  激活的环境profiles:active: devapplication:name: reimbursementSystemservlet:multipart:max-file-size: 10MBmax-request-size: 10MBdatasource:#    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=trueusername: rootpassword:123456driver-class-name: com.mysql.cj.jdbc.Driver

添加redis

redis:host: localhostport:6379password:123456database:0

添加mybatis-plus

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

添加Mybatis

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

shiro

shiro:loginUrl: /user/login

Swagger文档配置SwaggerConfig

@Configuration@EnableSwagger2publicclassSwaggerConfig{/**
     * 配置docket以配置Swagger具体参数
     * @return 返回一个docket配置参数
     */@BeanpublicDocketdocket(){returnnewDocket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select().apis(RequestHandlerSelectors.basePackage("com.group.reimbursement.controller")).paths(PathSelectors.any()).build();}/**
     * Api的信息
     * @return ApiInfo
     */privateApiInfoapiInfo(){Contact contact=newContact("张连勇、林良怀","https://blog.csdn.net/zly03?spm=1000.2115.3001.5343","lyzhang@163.com");returnnewApiInfoBuilder().title("发票管理系统").version("1.0.2").description("接口文档").contact(contact).<
  • 作者:宏远十一冠王
  • 原文链接:https://blog.csdn.net/zly03/article/details/127631115
    更新时间:2022年12月6日08:25:35 ,共 7573 字。