上文介绍了如何使用SpringBoot创建一个web项目,用来输出Hello SpringBoot,使用的是默认端口号和上下文根,这节介绍一下如何修改端口号和上下文根,以及不同环境下主配置文件的激活;
一、修改SpringBoot工程默认端口号和上下文根
1、创建SpringBoot工程的web项目
2、只需要在核心配置文件applicaton.properties中重新定义端口号和上下文根即可:
server.port=8090
server.servlet.context-path=/modify
运行项目即可在日志文件中查到端口号和上下文根
多环境下的核心配置文件的激活
在实际开发过程中,同一个项目需要在不同的环境中运行,有开发环境、测试环境、生产环境等,这时候在不同环境中运行都要重新修改主配置文件,会比较麻烦,这时候选择创建多个配置文件,每次运行时选择需要激活的核心配置文件即可;
注意:
1、多个核心配置文件必须都要以application-开头;
2、其中核心配置文件还可以使用application.xml
三、核心配置文件的其他作用
1、核心配置文件是一个.properties文件,所以还可以用来获取自定义配置
在application.properties中自定义配置为:
student.name=zhangsan
在studentController.java文件中使用@value(${“student.name”})注解,获取自定义配置并将获取的值赋值给被注解的变量:
注:获取自定义配置不一定在控制层,在业务层也可以。
2、自定义配置比较多的时候,使用@ConfigurationProperties注解将文件映射成一个对象;用法如下:
(1)新建对象,对象中的属性名和自定义属性名相同,使用@component注解将对象交给容器管理
@Component
@ConfigurationProperties(prefix ="city")
public class City {
private String name;
private String webset;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getWebset() {
return webset;
}
public void setWebset(String webset) {
this.webset = webset;
}
}
在控制层使用@Autowire注解创建对象,在方法中调用
@Controller
public class indexController {
@Autowired()
private School school;
@Autowired
private City city;
@RequestMapping(value = "/school")
public @ResponseBody Object school(){
return school.getName();
}
@RequestMapping(value = "/city")
public @ResponseBody Object city(){
return city.getName();
}
}
注意:自定义类的属性和核心配置文件的属性名必须相同