Spring EL表示式的运用@Value
来源:互联网 发布:linux 中文输入法安装 编辑:程序博客网 时间:2024/06/16 20:58
Spring EL表达式语言,支持在XML和注解中表达式,类是于JSP的EL表达式语言。
在Spring开发中经常涉及调用各种资源的情况,包含普通文件、网址、配置文件、系统环境变量等,我们可以使用Spring的表达式语言实现资源的注入。
Spring主要在注解@value的参数中使用表达式。
本事咧演示一下情况:
- 注入普通字符串
- 注入操作系统属性
- 注入表达式运算结果
- 注入其他Bean的属性
- 注入文件内容
- 注入网址内容
- 注入属性文件(注意:用的是$符号)
配置文件test.properties:
book.author=wangyunfeibook.name=spring boot
测试文件test.text:
你好!Spring boot
注入类:
@Configuration // 声明当前类是一个配置类,相当于Spring配置的XML文件// 包扫描,并排除了对BeanConfig的扫描@ComponentScan(basePackages={"com.chenfeng.xiaolyuh"}, excludeFilters={@ComponentScan.Filter(type=FilterType.ASSIGNABLE_TYPE, value={BeanConfig.class, AopConfig.class})})@PropertySource("classpath:test.properties")// 指定文件地址public class ELConfig {@Value("注入普通字符串")// 注入普通字符串private String normal;@Value("#{systemProperties['os.name']}")// 注入操作系统属性private String osName;@Value("#{T(java.lang.Math).random() * 100.0 }")// 注入表达式结果private double randomNumber; @Value("#{demoELService.another}")// 注入其他Bean属性private String fromAnother;@Value("classpath:test.txt")// 注入文件资源private Resource testFile;@Value("https://www.baidu.com")// 注入网址资源private Resource testUrl;@Value("${book.name}")// 注入配置文件【注意是$符号】private String bookName;@Autowired// Properties可以从Environment获得private Environment environment;//@Bean//public static PropertySourcesPlaceholderConfigurer propertyConfigure() {//return new PropertySourcesPlaceholderConfigurer();//}@Overridepublic String toString() {try {return "ELConfig [normal=" + normal + ", osName=" + osName + ", randomNumber=" + randomNumber + ", fromAnother=" + fromAnother + ", testFile=" + IOUtils.toString(testFile.getInputStream()) + ", testUrl=" + IOUtils.toString(testUrl.getInputStream()) + ", bookName=" + bookName+ ", environment=" + environment.getProperty("book.name") + "]";} catch (IOException e) {e.printStackTrace();return null;}}}
测试类:
public class SpringELTest {AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(ELConfig.class);@Testpublic void contextTest() {ELConfig elConfig = context.getBean(ELConfig.class);System.out.println(elConfig.toString());}@Afterpublic void closeContext() {context.close();}}
git
1 0
- Spring EL表示式的运用@Value
- EL表示式
- Spring的EL表达式
- Spring的EL表达式
- Spring的EL表达式
- javaee之el表达式的运用
- OGNL表示式和EL表达式
- Spring 的AOP运用
- spring注解的运用
- 3.spring的EL表达式
- 运用El表达式函数
- Spring 在 xml配置文件 或 annotation 注解中 运用Spring EL
- Spring 在 xml配置文件或annotation注解中运用Spring EL
- Spring 在 xml配置文件 或 annotation 注解中 运用Spring EL
- EL表达式遍历map的key和value
- EL表达式遍历map的key和value
- EL表达式, JSTL, 获取map集合中key的value
- el表达式中动态获取map的value值
- PostgreSQL查询优化器--逻辑查询优化--视图优化(一)
- PostgreSQL查询优化器--逻辑查询优化--视图优化(二)
- 数据库使用经验---面对大数据背景
- PostgreSQL查询优化器--逻辑查询优化--视图优化(三)
- 开源数据库的编译---MySQL的编译(For MySQL V5.6.12)
- Spring EL表示式的运用@Value
- PostgreSQL查询优化器--逻辑查询优化--子查询优化(一)
- 迎接2014---跨年礼物送给各位朋友
- PostgreSQL查询优化器--逻辑查询优化--子查询优化(二)
- MySQL使用索引优化DISTINCT操作
- PostgreSQL查询优化器--逻辑查询优化--子查询优化(三)
- PostgreSQL查询优化器--逻辑优化功能篇--目录
- 跨进程传递数据的做法
- 数据库查询优化器的艺术:原理解析与SQL性能优化