Java Spring-如何向构造函数注入字符串值?
我有以下内容:Java Spring-如何向构造函数注入字符串值?,java,spring,inversion-of-control,code-injection,Java,Spring,Inversion Of Control,Code Injection,我有以下内容: @Component public class ServiceManagerImpl implements ServiceManager { private final ServiceA serviceA; private final ServiceB serviceB; private final String path; @Autowired protected ServiceManagerImpl(ServiceA serviceA, Service
@Component
public class ServiceManagerImpl implements ServiceManager {
private final ServiceA serviceA;
private final ServiceB serviceB;
private final String path;
@Autowired
protected ServiceManagerImpl(ServiceA serviceA, ServiceB serviceB, String path) {
this.serviceA= serviceA;
this.serviceB= serviceB;
this.path= path;
}
(...)
}
现在我想创建一个简单的服务,我将向上面的组件注入特定的路径值。此值应来自具有字符串常量的类:
@Component
public class ServiceManagerClientImpl implements ServiceManagerClient {
private ServiceManager serviceManager;
@Autowired
public ServiceManagerClientImpl(ServiceManager serviceManager) {
this.serviceManager = serviceManager;
}
}
是否可以在ServiceManagerClientImpl级别上动态注入simplepath值(不是来自属性/yaml文件的值)?您可以自动连接环境类
import org.springframework.core.env.Environment;
@Autowired
private Environment environment;
您可以使用下面的语句来读取enironment变量(“path”)
environment.getProperty("path");
可以自动关联环境类
import org.springframework.core.env.Environment;
@Autowired
private Environment environment;
您可以使用下面的语句来读取enironment变量(“path”)
environment.getProperty("path");
它是一个具有常量的类还是一个具有类似资源的应用程序.properties的类重要吗?请在Spring Boot中使用值和限定符批注。您可以将其设置为环境变量并从中读取。@SujayMohan示例?@duffymo示例?它是一个具有常量的类还是一个具有类似资源的应用程序.properties的类重要吗?请使用值和限定符Spring Boot中的批注。您可以将其设置为环境变量并从中读取。@SujayMohan示例?@duffymo示例?