application.properties的使用
主要用来配置数据库连接、日志相关配置等。除了这些配置内容之外,本文将具体介绍一些在application.properties配置中的其他特性和使用方法。
在application.properties文件中,如下:
com.wjd.project.name=程序猿DD SPRING BOOT 学习
com.wjd.project.title=Spring Boot教程
写一个配置类 ProjectProperties
然后通过@Value("${属性名}")
注解来加载对应的配置属性
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
/**
* Created by Administrator on 2017/12/13.
* <p>
* 配置类
*/
@Component
public class ProjectProperties {
//@Value("${属性名}")注解来加载对应的配置属性
@Value("${com.wjd.project.name}")
private String name;
@Value("${com.wjd.project.title}")
private String title;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
}
方法测试,教程中使用Junit进行测试,版本问题弄得很烦,目前还不是特别清楚版本之间咱们协作。于是使用PostMan CHROM浏览器插件进行测试。
用上章节的HelloController读取配置类信息。
package com.wjd.web;
import com.wjd.properties.ProjectProperties;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* Created by Administrator on 2017/12/12.
* 第一个Controller 类
*/
@RestController
public class HelloController {
@Autowired
private ProjectProperties projectProperties;
@RequestMapping("/hello")
public String hello() {
return "Name is " +projectProperties.getName()+" \n Title is "+projectProperties.getTitle()+" ";
}
}
这时出现乱码问题。解决方案是调整文件编码格式。下面介绍下IDEA 设置文件编码问题。
并在配置文件中加入下面配置:
spring.http.encoding.force=true
spring.http.encoding.charset=UTF-8
spring.http.encoding.enabled=true
server.tomcat.uri-encoding=UTF-8