大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

SpringBoot教程
SpringBoot入門案例
SpringBoot框架Web開發(fā)
SpringBoot非web應(yīng)用程序
SpringBoot使用攔截器
SpringBoot中使用Servlet
SpringBoot中使用Filter
SpringBoot項(xiàng)目配置字符編碼
SpringBoot打包與部署
SpringBoot使用Actuator
SpringBoot集成Thymeleaf模板
SpringBoot總結(jié)及綜合案例
SpringBoot工程下使用Mybatis反向工程

SpringBoot核心配置文件

Spring Boot的核心配置文件用于配置Spring Boot程序,名字必須以application開始.

Spring Boot核心配置格式

1 .properties文件(默認(rèn)采用該文件)

在002-springboot-springmvc項(xiàng)目基礎(chǔ)上,進(jìn)行修改

項(xiàng)目名稱:003-springboot-port-context-path

通過修改application.properties配置文件,在修改默認(rèn)tomcat端口號(hào)及項(xiàng)目上下文件根

鍵值對(duì)的properties屬性文件配置方式

#設(shè)置內(nèi)嵌Tomcat端口號(hào)
server.port=9090

#配置項(xiàng)目上下文根
server.servlet.context-path=/003-springboot-port-context-path

配置完畢之后,啟動(dòng)瀏覽器測試

頁面顯示結(jié)果

2 .yml文件

項(xiàng)目名稱:005-springboot-yml,在004項(xiàng)目基礎(chǔ)之上

yml 是一種 yaml 格式的配置文件,主要采用一定的空格、換行等格式排版進(jìn)行配置。

yaml 是一種直觀的能夠被計(jì)算機(jī)識(shí)別的的數(shù)據(jù)序列化格式,容易被人類閱讀,yaml 類似于 xml,但是語法比xml 簡潔很多,值與前面的冒號(hào)配置項(xiàng)必須要有一個(gè)空格, yml 后綴也可以使用 yaml 后綴

注意:當(dāng)兩種格式配置文件同時(shí)存在,使用的是.properties配置文件,為了演示yml,可以先將其改名,重新運(yùn)行Application,查看啟動(dòng)的端口及上下文根。

我們以后在授課的過程中,使用properties,所以演示完yml效果后,將該配置文件改名

SpringBoot多環(huán)境配置

在實(shí)際開發(fā)的過程中,我們的項(xiàng)目會(huì)經(jīng)歷很多的階段(開發(fā)->測試->上線),每個(gè)階段的配置也會(huì)不同,例如:端口、上下文根、數(shù)據(jù)庫等,那么這個(gè)時(shí)候?yàn)榱朔奖阍诓煌沫h(huán)境之間切換,SpringBoot提供了多環(huán)境配置,具體步驟如下:

項(xiàng)目名稱:006-springboot-multi-environment

1.為每個(gè)環(huán)境創(chuàng)建一個(gè)配置文件,命名必須以application-環(huán)境標(biāo)識(shí).properties|yml

application-dev.properties

#開發(fā)環(huán)境

#設(shè)置內(nèi)嵌Tomcat默認(rèn)端口號(hào)
server.port=8080

#設(shè)置項(xiàng)目的上下文根
server.servlet.context-path=/006-springboot-multi-environment-dev

application-product.properties

#生產(chǎn)環(huán)境

#配置內(nèi)嵌Tomcat默認(rèn)端口號(hào)
server.port=80

#配置項(xiàng)目上下文根
server.servlet.context-path=/006-springboot-multi-environment-product

application-test.properties

#測試環(huán)境

#配置內(nèi)嵌Tomcat端口號(hào)
server.port=8081

#配置項(xiàng)目的上下文根
server.servlet.context-path=/006-springboot-multi-environment-test

● 在總配置文件application.properties進(jìn)行環(huán)境的激活

#SpringBoot的總配置文件

#激活開發(fā)環(huán)境
#spring.profiles.active=dev

#激活測試環(huán)境
#spring.profiles.active=test

#激活生產(chǎn)環(huán)境
spring.profiles.active=product

等號(hào)右邊的值和配置文件的環(huán)境標(biāo)識(shí)名一致,可以更改總配置文件的配置,重新運(yùn)行Application,查看啟動(dòng)的端口及上下文根。

SpringBoot自定義配置

在SpringBoot的核心配置文件中,除了使用內(nèi)置的配置項(xiàng)之外,我們還可以在自定義配置,然后采用如下注解去讀取配置的屬性值。

1.@Value注解

項(xiàng)目名稱:007-springboot-custom-configuration

用于逐個(gè)讀取application.properties中的配置

案例演示

① 在核心配置文件applicatin.properties中,添加兩個(gè)自定義配置項(xiàng)school.name和school.website。在IDEA中可以看到這兩個(gè)屬性不能被SpringBoot識(shí)別,背景是桔色的。

② 在SpringBootController中定義屬性,并使用@Value注解或者自定義配置值,并對(duì)其方法進(jìn)行測試

/**
 * ClassName:SpringBootController
 * Package:com.bjpowernode.springboot.web
 * Description:

 */
@Controller
public class SpringBootController {

    @Value("${school.name}")
    private String schoolName;

    @Value("${school.websit}")
    private String schoolWebsit;

    @RequestMapping(value = "/springBoot/say")
    public @ResponseBody String say() {
        return schoolName + "------" + schoolWebsit;
    }
}

③ 重新運(yùn)行Application,在瀏覽器中進(jìn)行測試

2. @ConfigurationProperties

項(xiàng)目名稱:008-springboot-custom-configuration

將整個(gè)文件映射成一個(gè)對(duì)象,用于自定義配置項(xiàng)比較多的情況

案例演示

① 在com.bjpowernode.springboot.config包下創(chuàng)建ConfigInfo類,并為該類加上Component和ConfigurationProperties注解,prefix可以不指定,如果不指定,那么會(huì)去配置文件中尋找與該類的屬性名一致的配置,prefix的作用可以區(qū)分同名配置

/**
 * ClassName:ConfigInfo
 * Package:com.bjpowernode.springboot.config
 * Description:

 */
@Component
@ConfigurationProperties(prefix = "school")
public class ConfigInfo {

    private String name;

    private String websit;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getWebsit() {
        return websit;
    }

    public void setWebsit(String websit) {
        this.websit = websit;
    }
}

② 在SpringBootController中注入ConfigInfo配置類

@Autowired
private ConfigInfo configInfo;

③ 修改SpringBootController類中的測試方法

@RequestMapping(value = "/springBoot/configInfo")
public @ResponseBody String say() {
    return configInfo.getName() + "=======" + configInfo.getWebsit();
}

④ 重新運(yùn)行Application,在瀏覽器中進(jìn)行測試

3. 警告解決

① 在ConfigInfo類中使用了ConfigurationProperties注解后,IDEA會(huì)出現(xiàn)一個(gè)警告,不影響程序的執(zhí)行

② 點(diǎn)擊open documentnation跳轉(zhuǎn)到網(wǎng)頁,在網(wǎng)頁中提示需要加一個(gè)依賴,我們將這個(gè)依賴拷貝,粘貼到pom.xml文件中

!--解決使用@ConfigurationProperties注解出現(xiàn)警告問題-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>

4. 中文亂碼

如果在SpringBoot核心配置文件中有中文信息,會(huì)出現(xiàn)亂碼:

• 一般在配置文件中,不建議出現(xiàn)中文(注釋除外)

• 如果有,可以先轉(zhuǎn)化為ASCII碼

5. 友情提示

大家如果是從其它地方拷貝的配置文件,一定要將里面的空格刪干凈。

全部教程
主站蜘蛛池模板: 午夜视频福利 | 久久久久久综合 | 亚洲欧美日韩国产精品网 | 久久久精品久久 | 国产欧美日韩精品第二区 | 婷婷中文 | 亚洲自拍成人 | 天堂一区二区三区精品 | 国产日韩久久 | 久久精品国产亚洲片 | 欧美性在线播放 | 国产精品尹人在线观看免费 | 国产精品日本一区二区在线播放 | 日日狠狠久久偷偷四色综合免费 | 韩国高清乱理伦片中文 | 不卡在线| 日本久久精品视频 | 久久黄色视屏 | 模特视频一二三区 | 性综合网 | 99热久久国产精品这里有全部 | 999精品影视在线观看 | 欧美日韩在线播放一区二区三区 | 色综合网亚洲精品久久久 | 奇米99| 97精品国产91久久久久久 | 欧美日韩激情在线一区二区 | 日韩欧美在线播放视频 | 精品亚洲成a人在线播放 | 国产在线欧美日韩一区二区 | 囗交免费毛片 | 亚洲视频国产视频 | 91久久国产精品视频 | 最新中文字幕在线播放 | 九色福利 | 福利网站在线播放 | 婷婷色在线观看 | 伊人久久国产免费观看视频 | 中文字幕久久久久一区 | 欧美日韩视频精品一区二区 | 黄色在线网站视频 |