在一個(gè)正常的springBoot工程中其application.properties的配置文件如下內(nèi)容【就一行】base.myname2=my?Name?properties?我的名字然后配置一個(gè)讀取配置文件的類package?com.beini.base.config;
import?org.springframework.boot.context.properties.ConfigurationProperties;
import?org.springframework.context.annotation.Configuration;
import?lombok.Data;
@Configuration
@ConfigurationProperties(prefix="base")
/*相當(dāng)于普通java類的getter和setter*/
@Data
public?class?PropertiesConfig?{
????private?String?myname2;
}然后在一個(gè)測(cè)試類開始書寫測(cè)試類package?com.beini.base;
import?org.junit.Test;
import?org.junit.runner.RunWith;
import?org.springframework.beans.factory.annotation.Autowired;
import?org.springframework.boot.test.context.SpringBootTest;
import?org.springframework.test.context.junit4.SpringRunner;
import?com.beini.base.config.PropertiesConfig;
@RunWith(SpringRunner.class)
@SpringBootTest
public?class?BaseApplicationTests?{
????@Autowired
????private?PropertiesConfig?config;
????@Test
????public?void?contextLoads()?{
???? System.out.println("yml文件"+config.getMyname());
???? System.out.println("properties文件"+config.getMyname2());
???? }
????}
}打印出來的結(jié)果如下【運(yùn)行測(cè)試類】properties文件my?Name?properties?????-也就是說中文“我的名字” 替換成了如下亂碼????-問題代碼下載鏈接https://github.com/XiaoCao1434/beini-base 希望有答案的慕課友們解答。另外我試過以下兩者方式可行a: properties 文件的編碼格式使用默認(rèn)的ISO-8859-1編碼格式【缺點(diǎn)就是編輯的文件不方便肉眼直接觀察】b: 將properties的內(nèi)容轉(zhuǎn)換成yml文件【缺點(diǎn)就是不方便當(dāng)前項(xiàng)目屬性配置轉(zhuǎn)換】希望的答案properties的文件編碼格式是UTF-8,而且屬性值可能是中文在讀取配置文件之后其屬性值能夠正確讀出中文值且配置文件的內(nèi)容能夠方便肉眼看到漢字
添加回答
舉報(bào)
0/150
提交
取消