SpringBoot配置大全总结(一)

以application.properties属性文件为例:

 

1. 在pom.xml中配置Java版本:

<plugin>
<groupid>org.apache.maven.plugins</groupid>
<artifactid>maven-compiler-plugin</artifactid>
<version>3.6</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>

2. 在pom.xml中设置项目编码:

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>

 

3. 在属性文件中配置Tomcat

#启动端口
server.port=8080 
#当项目出错时跳转的页面
server.error.path=/error
#session失效时间,30m表示30分钟
server.servlet.session.timeout=30m
#项目路径名称,默认为/
server.servlet.context-path=/
#配置tomcat请求编码
server.tomcat.uri-encoding=utf-8
#Tomcat最大线程数
server.tomcat.max-threads=500
#存放Tomcat运行日志和临时文件的目录,若不配值则默认使用系统的临时目录
server.tomcat.basedir=/home/tmp

 

4. 在属性文件中配置HTTPS

利用Java数字证书管理工具keytool生成一个数字证书,cmd命令窗口生成命令:

keytool -genkey -alias tomcathttps -keyalg RSA -keysize 2048 -keystore key.p12 -validity 365

命令解释:

• -genkey 表示要创建一个新的密钥。

• -alias 表示 keystore 的别名。

• -keyalg 表示使用的加密算法是 RSA, 一种非对称加密算法.

• -keysize 表示密钥的长度.

• -keystore 表示生成的密钥存放位直。

• -validity 表示密钥的有效时间,单位为天。

 

将生成的数字证书添加到项目根目录下,在application.properties中做如下配置:

#秘钥文件名
server.ssl.key- store=key.pl2
#秘钥别名,就是在cmd命令执行中alias的参数
server.ssl.key-alias=tomcathttps
#秘钥密码,就是在cmd命令执行中输入的密码
server.ssl.key- store-password=l23456

在浏览器中访问项目时,记得添加信任即可访问。

 

5. 在pom.xml中配置Jetty服务器

<dependency>
<groupid>org. springframework.boot</groupid>
<artifactid>spring-boot-starter-web</artifactid>
<!--禁用tomcat服务器-->
<exclusions>
<exclusion>
<groupid>org.springframework.boot</groupid> 
<artifactid>spring-boot-starter-tomcat </artifactid>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupid>org.springframework.boot</groupid>
<artifactid>spring-boot-starter-jetty</artifactid>
</dependency>

 

6. 切换启动环境配置

#test:测试环境/dev:开发环境/prod:生产环境
spring.profiles.active=test/dev/prod

 

7.整合Thymeleaf模板属性配置

在pom.xml中引入thymeleaf依赖,如下:

<dependency>
<groupid>org.springframework.boot</groupid>
<artifactid>spring-boot-starter-thymeleaf</artifactid>
</dependency>

 

常见的属性配置:

#是否开启缓存,开发时可设置为 false,默认为 true
spring.thymeleaf.cache=true
#检查模板是否存在,默认为 true
spring.thymeleaf.check-template=true
#检查模板位置是否存在,默认为 true
spring.thymeleaf.check-template-location=true
#模板文件编码
spring.thymeleaf.encoding=UTF-8
#模板文件位置
spring.thymeleaf.prefix=classpath:/templates/
#Content-Type 配置
spring.thymeleaf.servlet.content-type=text/html
#模板文件后缀
spring.thymeleaf.suffix=.html

 

8. 整合Freemarker模板属性配置

在pom.xml中引入freemarker依赖配置,如下:

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

 

常见的属性配置:

#HttpServletRequest 的属性是否可以覆盖 controller 中 model 的同名项
spring.freemarker.allow-request-override=false
#HttpSession 的属性是否可以覆盖 controller 中 model 的同名项
spring.freemarker.allow-session-override=false
#是否开启缓存
spring.freemarker.cache=false
#模板文件编码
spring.freemarker.charset=UTF-8
#是否检查模板位置
spring.freemarker.check-template-location=true
#Content-Type 的值
spring.freemarker.content-type=text/html
#是否将 HttpServletRequest 中的属性添加到 Model 中
spring.freemarker.expose-request-attributes=false
#是否将 HttpSession 中的属性添加到 Model 中
spring.freemarker.expose-session-attributes=false
#模板文件后缀
spring.freemarker.suffix=.ftl
#模板文件位置
spring.freemarker.template-loader-path=classpath: /templates/
#设定静态文件路径,js,css等
spring.mvc.static-path-pattern=/static/**

 

9. 数据库连接配置

MySQL连接配置:

(1) 引入jar包依赖环境

 

<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>

 

(2)属性文件配置

#连接驱动
#spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#连接url
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8&useSSL=true
#账号
spring.datasource.username=root
#密码
spring.datasource.password=root

 

Oracle连接配置:

(1) 引入jar包依赖环境

 

<!-- https://mvnrepository.com/artifact/com.oracle/ojdbc6 -->
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.3</version>
</dependency>

 

(2)属性文件配置

#oracle配置
spring.datasource.driverClassName=oracle.jdbc.driver.OracleDriver
spring.datasource.url=jdbc:oracle:thin:@127.0.0.1:1521:test
spring.datasource.username=root

 

SQL Server连接配置:

(1) 引入jar包依赖环境

 

<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<scope>runtime</scope>
</dependency>

 

(2)属性文件配置

#SQLServer配置
spring.datasource.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.datasource.url=jdbc:sqlserver://127.0.0.1:1433;DatabaseName=test
spring.datasource.username=sa
spring.datasource.password=123456


 

PostgreSQL连接配置

(1) 引入jar包依赖环境

 

<!-- postgresql驱动 -->
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
</dependency>

 

(2)属性文件配置

#PostgreSQL配置
spring.datasource.driverClassName=org.postgresql.Driver
spring.datasource.url=jdbc:postgresql://127.0.0.1:5432/test
spring.datasource.username=postgres
spring.datasource.password=123456

 

H2数据源连接配置:

(1) 引入jar包依赖环境

 

<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>

 

(2)属性文件配置

#连接驱动
spring.datasource.driver-class-name=org.h2.Driver
#数据表结构信息
spring.datasource.schema=classpath:db/schema-h2.sql
#数据表数据
spring.datasource.data=classpath:db/data-h2.sql
#连接url
spring.datasource.url=jdbc:h2:mem:test
#账户密码
spring.datasource.username=root
spring.datasource.password=test

MongoDB连接配置

(1)引入jar包依赖环境

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

(2)属性文件配置:

MongoDB 2.4以下版本:

# 主机地址
spring.data.mongodb.host=127.0.0.1
# 端口
spring.data.mongodb.port=27017
# 账号密码
spring.data.mongodb.username=root
spring.data.mongodb.password=root
# 数据库
spring.data.mongodb.database=test

 

MongoDB 2.4以上版本:

spring.data.mongodb.uri=mongodb://root(userName):root(password)@localhost(ip地址):27017(端口号)/test(collections/数据库)

示例:spring.data.mongodb.uri=mongodb://root:root@127.0.0.1:27017/test

 

10. 发送邮件配置

(1)引入jar包依赖环境

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>RELEASE</version>
</dependency>

 

(2) 属性文件配置

#163邮箱
spring.mail.host=smtp.163.com
spring.mail.username=xxx@163.com
spring.mail.password=xxx
 
#qq邮箱
#spring.mail.host=smtp.qq.com
#spring.mail.username=xxx@qq.com
#spring.mail.password=xxx
spring.mail.default-encoding=UTF-8
 
#其他邮箱配置类似

 

 

 

 

4、@Slf4j  依赖

<dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
      <optional>true</optional>
</dependency>

5、Eureka服务端

 

<dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
   </dependency>

 

6、Eureka客户端

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>

需要添加以下依赖 ,否则会报错: Completed shut down of DiscoveryClient

 

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