四、Spring Boot配置
4.1.配置Spring Boot
4.1.1.服務(wù)器配置(properties文件)
*更換端口: server.port = 9090
也可以在命令行中指定啟動端口,比如傳入?yún)?shù)—server.port=9000 :
java –jar bootsample.jar –server.port=9000
*SpringBoot默認為應(yīng)用配置的上下文訪問目錄是“/”,可以通過配置文件或者命令行,配置server.context-path:
server.servlet.Path=/config
常用的服務(wù)器配制的屬性如下:
*server.address: 服務(wù)器IP綁定地址,如果主機有多個網(wǎng)卡,可以綁定一個IP地址
*server.session.timeout: 會話過期時間,以秒為單位
*server.err.path: 服務(wù)器出錯后的1處理路徑/error
*server.servlet.contextpath: Spring Boot應(yīng)用的上下文
*server.port: Spring Boot英勇監(jiān)聽端口
4.1.2使用其他Web服務(wù)器
*server.tomcat.*包含了Tomcat的相關(guān)配置
#打開Tomcat訪問日志
server.tomcat.accesslog.enabled=false
#訪問日志所在的目錄
server.tomcat.accesslog.directory=logs
#允許HTTP請求緩存到請求隊列的最大個數(shù),默認不受限制
server.tomcat.accept-count=
#最大連接數(shù),默認不限制,如果一旦連接數(shù)到達,剩下的連接將會保存到請求緩存隊列里,也就是accept-count指定隊列
server.tomcat.max-connections=
#最大工作線程數(shù)
server.tomcat.max-threads=
#HTTP POST內(nèi)容最大長度
server.tomcat.max-http-post-size
4.1.3 MySql配置(yml文件)
#=========MySQL基礎(chǔ)配置===========#
# MySQL driver-class
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
# MySQL服務(wù)器地址看蚜、端口叫搁、數(shù)據(jù)庫名稱、編碼
url: jdbc:mysql://localhost:3306/MySQL1
# MySQL用戶名
username: admin
schema:
- classpath:sql/user.sql
# MySQL密碼
password: ******(此處為數(shù)據(jù)庫連接密碼)
4.1.4 Redis配置(yml文件)
#=========Redis基礎(chǔ)配置===========#
# Redis數(shù)據(jù)庫索引(默認為0)
redis:
database: 0
# Redis服務(wù)器地址
host: 127.0.0.1
# Redis服務(wù)器連接端口
port: 6379
# Redis服務(wù)器連接密碼(默認為空)
password: 123456
#=========Redis線程池配置==========#
# 連接池最大連接數(shù)(使用負值表示沒有限制)
pool:
max-active: 200
# 連接池最大阻塞等待時間(使用負值表示沒有限制)
max-wait: -1
# 連接池中的最大空閑連接
max-idle: 10
# 連接池中的最小空閑連接
min-idle: 0
# 連接超時時間(毫秒)
timeout: 1000
4.1.5 其他
- 開啟駝峰命匹配規(guī)則(properties文件)
mybatis.configuration.map-underscore-to-camel-case=true
- 開啟數(shù)據(jù)庫訪問日志
logging.level.com.wss.cache.mapper=debug
// 注意: com.wss.cache.mapper 是 src/main/java 下的mapp文件所在的路徑
4.2.讀取應(yīng)用配置
4.2.1Environment
Environment是一個通用的讀取應(yīng)用程序運行時環(huán)境變量的類,可以讀取application.properties、命令行輸入?yún)?shù)渴逻、系統(tǒng)屬性疾党、操作系統(tǒng)環(huán)境變量等,可以通過Spring容器自動注入,比如在Spring管理的Bean中:
@Configuration
public class EnvConfig{
@Autowired private Environment env;
public int getServerPort() {
return env.getProperty(“server.port”,Integer.classs)
}
}
其他讀取的例子:
env.getProperty(“user.dir”): 程序運行的目錄,如果在IDE中運行,就是工程目錄,user.dir是系統(tǒng)屬性
env.getProperty(“user.home”):執(zhí)行程序的用戶的home目錄,user.home是系統(tǒng)屬性
env.getProperty(“JAVA_HOME”):讀取設(shè)置的環(huán)境變量(不區(qū)分大小寫)
env.getProperty(“server.port”):讀取server.port,來自application.properties
4.2.2.@Value(mailto:4.2.2.@Value)
直接通過@Value注解注入一個配置信息到Spring管理的Bean中:
@RequestMapping(“/showvalue.html”)
public @ResponseBody String value(@Value(“${server.port}”) int port){
return “port:”+port;
}
*注意:@Value不能在任何BeanPostProcessor和BeanFactoryPostProcessor的子類中被注入(因為@Value本身是通過AutowiredAnnotationBeanPostProcesser實現(xiàn)的,它是BeanPostProcessor接口的實現(xiàn)類)
4.2.3 通過@ConfigurationProperties注入:
@ConfigurationProperties(
prefix = "spring.redis"
)
public class RedisProperties {
private int database = 0;
private String url;
private String host = "localhost";
private String password;
private int port = 6379;
private boolean ssl;
private int timeout;
private RedisProperties.Pool pool;
private RedisProperties.Sentinel sentinel;
private RedisProperties.Cluster cluster;
}
文集推薦:
Java基礎(chǔ)方法集1
Python基礎(chǔ)知識完整版
Spring Boot學(xué)習(xí)筆記
Linux指令進階
Java高并發(fā)編程
SpringMVC基礎(chǔ)知識進階
Mysql基礎(chǔ)知識完整版
健康管理系統(tǒng)學(xué)習(xí)花絮(學(xué)習(xí)記錄)
Node.js基礎(chǔ)知識(隨手筆記)
MongoDB基礎(chǔ)知識
Dubbo學(xué)習(xí)筆記
Vue學(xué)習(xí)筆記(隨手筆記)
聲明:發(fā)表此文是出于傳遞更多信息之目的。若有來源標注錯誤或侵犯了您的合法權(quán)益惨奕,請作者持權(quán)屬證明與本我們(QQ:981086665雪位;郵箱:981086665@qq.com)聯(lián)系聯(lián)系,我們將及時更正梨撞、刪除雹洗,謝謝。