application.yml文件中的參數其實都在Environment裏,所以直接從Environment裏讀取即可.爲方便起見,我自己寫了一個參數文件,將常用的一些參數及Environment一併放到裏面,方便系統使用;使用時直接用GlobalProperties.getEnv.getProperty("server.port")即可.參考代碼如下:
package com.jeelite.modules.config;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.env.Environment;
import org.springframework.stereotype.Component;
@Component("GlobalProperties")
public class GlobalProperties {
@Autowired
private Environment environment;
@Value("${server.port}")
private String serverPort;
@Value("${server.context-path}")
private String serverName;
@Value("${spring.datasource.driver-class-name}")
private String driverClass;
@Value("${spring.datasource.username}")
private String username;
@Value("${spring.datasource.password}")
private String password;
public String getServerPort() {
return serverPort;
}
public void setServerPort(String serverPort) {
this.serverPort = serverPort;
}
public String getServerName() {
return serverName;
}
public void setServerName(String serverName) {
this.serverName = serverName;
}
public String getDriverClass() {
return driverClass;
}
public void setDriverClass(String driverClass) {
this.driverClass = driverClass;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public Environment getEnv(){
return environment;
}
}