先简单介绍下Spring EL。
Spring EL 也就是Spring表达式语言,支持在xml和注解中使用表达式,类似于JSP的EL表达式语言。
Spring开发中我们可能经常涉及到调用各种资源的情况,包含普通文件、网址、配置文件、系统环境变量等,我们可以使用Spring的表达式语言实现资源的注入。
Spring主要在注解@Value的参数中使用表达式。
本示例演示实现以下几种情况:
1、注入普通的字符串
2、注入操作系统属性
3、注入表达式运算结果
4、注入其他Bean的属性
5、注入文件内容
6、注入网址内容
7、注入属性文件
在本节演示中,我遇到一个问题,已在此博客中解决,如有朋友遇到,请参考本篇博客解决:
<a href="http://blog.csdn.net/qq_26525215/article/details/53155760" target="_blank">【错误解决】[Maven] cannot be opened because it does not exist错误[文件无法编译到target目录下的解决方法]</a>
进行本示例的演示,需要先配置好Maven和Spring哦、
见:
<a href="http://blog.csdn.net/qq_26525215/article/details/53010442" target="_blank">【Spring】基于IntelliJ IDEA搭建Maven</a>
因为需要将file转换成字符串,我们增加commons-io可以简化文件的相关操作、
在pom文件中增加如下代码:
然后,在当前类的目录下新建test.txt。内容随意。
我的内容如下:
然后再新建test.properties文件,内容如下,当然,你也可以自己修改:
注入配置配件需要使用@PropertySource指定文件地址,若使用@Value注入,则要配置一个PropertySourcesPlaceholderConfigurer的Bean。
注意,@Value(“${project.name}”)使用的是”<code>$</code>“而不是”#”。
上面的类演示了这2中配置配件的方式!
项目链接—具体包:
<a href="https://github.com/chenhaoxiang/Java/tree/master/springBoot/src/main/java/cn/hncu/p2_2_2SpringEL">https://github.com/chenhaoxiang/Java/tree/master/springBoot/src/main/java/cn/hncu/p2_2_2SpringEL</a>