Cuando no se utiliza antes de entorno de producción y así sucesivamente, el problema que se presenta es cuando tengo que modificar mi código dentro de la variable, es necesario modificar las variables globales, en general no piensan en escribir application.properties, pero en este caso la necesidad de otras notas conponent a clase hasta
indexPath=D:/lucene_index/happy6
@Component
public class ConstantInPro {
@Value("${indexPath}")
String Path;
public String getPath() {
return Path;
}
}
Esto es algo problemático, de vuelta a preguntó al profesor, propuso la producción de diferentes entornos, la necesidad de una gran estructural
Entonces tenemos que escribir sobre esto en la clase de configuración:
package com.etc.newmoudle.Config;
import org.springframework.context.EnvironmentAware;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.env.Environment;
/**
* author:langlang
* data: 2020-01-08 10:11
*/
@Configuration
public class SysEnv implements EnvironmentAware {
/**
* 项目环境
*/
public static String active;
/**
* 启动端口
*/
public static String port;
/**
* 项目上下文路径
*/
// public static String contextPath;
@Override
public void setEnvironment(Environment environment) {
active = environment.getProperty("spring.profiles.active");
// port = environment.getProperty("server.port");
// contextPath = environment.getProperty("server.servlet.context-path");
}
}