81,116
社区成员
发帖
与我相关
我的任务
分享
,百度后得知使用springMVC+Spring时有两个容器,参数不共享,于是之后我耍了个小聪明,想尝试新建一个类设置变量,然后在controller中用 类.get()的方式获取值
,然而事实证明这并没有什么卵用
同样获取不到,犯了愁了,不知该如何解决,网上也百度了,没有实际做法,求指点,最好给个实例<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<!-- 允许JVM参数覆盖 -->
<property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE" />
<!-- 忽略没有找到的资源文件 -->
<property name="ignoreResourceNotFound" value="true" />
<!-- 配置资源文件 -->
<property name="locations">
<list>
<value>classpath:jdbc.properties</value>
<value>classpath:shield.properties</value>
<value>classpath:mail.properties</value>
</list>
</property>
</bean>@Component
public class ConfigProperties {
@Value("#{configProperties['shieldTime']}")
private long shieldTime;
@Value("#{configProperties['workState']}")
private int workState;
@Value("#{configProperties['host']}")
private String host;
public String getHost() {
return host;
}
public void setHost(String host) {
this.host = host;
}
public String getMailChecker() {
return mailChecker;
} @RequestMapping(value = "/mail",method = RequestMethod.POST)
public @ResponseBody BaseResult<String> sendMail(@Valid SendMailInfo info){
ConfigProperties p=new ConfigProperties();
LOGGER.info(p.getHost());
LOGGER.info(""+p.getShieldTime());}@Autowired ConfigProperties p;
注入变量类的做法我也试过了,还是不行,虽然知道是容器问题但,原理上不太懂还是搞不定