Controller中如何获取ApplicationContext中读取的配置参数,@value不行

clorxd clorxd 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
今天做项目在properties文件中配置了参数,希望用@Value标签进行读取,然而发现无法注入,百度后得知使用springMVC+Spring时有两个容器,参数不共享,于是之后我耍了个小聪明,想尝试新建一个类设置变量,然后在controller中用 类.get()的方式获取值,然而事实证明这并没有什么卵用同样获取不到,犯了愁了,不知该如何解决,网上也百度了,没有实际做法,求指点,最好给个实例

这是我读取配置文件的applicationContext中的部分配置
<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>


这个是我天真的变量类,省了点get,set没贴出来,太长,实际是都有的
@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;
}


Controller其他中间无关部分略
 @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());}
...全文

相关推荐

详解Spring Boot读取配置文件与配置文件优先级

主要介绍了详解Spring Boot读取配置文件与配置文件优先级,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

weixin_38704386

Spring Boot中Controller间的调用

假定两个Controller都在同一个工程中。 如果有比较合理的分层设计,这样的需求应该是非常罕见的。因为大部分情况下,调用应该都是限于对业务逻辑层或者数据库层,并不会涉及Controller之间的调用。 本文是讨论Controller A必须调用Controller B的情况。 Controller A可以返回redirect和forward指令来进行跳转到Controller A,但这不属于本文讨论的场景。 显然不应该通过直接创建Controller B的实例,再调用方法来完成。因为Controller B的实例中,Spring Boot为其进行配置和对象注入,这些准备工作不是简单通过实例化Controller B可以完成。

王乾发

spring mvc 读取配置文件

NULL 博文链接:https://jiachenmianyu.iteye.com/blog/1745042

weixin_38669628

ssm框架基础配置文件web.xml模板springmvc.xml模板applicationContext.xml模板拿来即用

ssm框架基础配置文件,不需要自己每次都手动敲,拿来即用,注意修改少数几个路径,超级方便。

三岁时超帅哦

spring无法读取properties文件数据问题详解

主要介绍了spring无法读取properties文件数据问题详解,需要的朋友可以参考下

weixin_38727798
评论 1
收藏 已收藏
分享
返回顶部
clorxd
Web 开发 81,108 成员 341,721 内容