當(dāng)前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
Spring4中的@Value的使用(学习笔记)
生活随笔
收集整理的這篇文章主要介紹了
Spring4中的@Value的使用(学习笔记)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1、@Value用途介紹
Spring主要在注解@Value的參數(shù)中使用表達(dá)式
@Value的使用主要有以下幾種情況
(1)注入普通字符
(2)注入操作系統(tǒng)屬性
(3)注入表達(dá)式運(yùn)算結(jié)果
(4)注入其他Bean的屬性
(5)注入文件內(nèi)容
(6)注入網(wǎng)址內(nèi)容
(7)注入屬性文件
2、案例編寫之項(xiàng)目目錄結(jié)構(gòu)
3、pom.xml文件內(nèi)容
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.wisely</groupId><artifactId>highlight_spring4</artifactId><version>0.0.1-SNAPSHOT</version><properties><java.version>1.8</java.version><spring-framework.version>4.1.5.RELEASE</spring-framework.version></properties><dependencies><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring-framework.version}</version></dependency><!-- spring aop支持 --><dependency><groupId>org.springframework</groupId><artifactId>spring-aop</artifactId><version>${spring-framework.version}</version></dependency><!-- aspectj支持 --><dependency><groupId>org.aspectj</groupId><artifactId>aspectjrt</artifactId><version>1.8.6</version></dependency><dependency><groupId>org.aspectj</groupId><artifactId>aspectjweaver</artifactId><version>1.8.5</version></dependency><!-- Spring test 支持 --><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>${spring-framework.version}</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.11</version></dependency><dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.3</version></dependency><dependency><groupId>javax.annotation</groupId><artifactId>jsr250-api</artifactId><version>1.0</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>${spring-framework.version}</version></dependency></dependencies><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>2.3.2</version><configuration><source>${java.version}</source><target>${java.version}</target></configuration></plugin></plugins></build></project>4、test.txt的內(nèi)容
測試文件5、test.properties的內(nèi)容
book.author=wangyunfei book.name=spring boot6、DemoService的內(nèi)容
package com.wisely.highlight_spring4.ch2.el;import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service;@Service public class DemoService {@Value("其它類的屬性")private String another;public String getAnother() {return another;}public void setAnother(String another) {this.another = another;} }7、ElConfig的內(nèi)容
package com.wisely.highlight_spring4.ch2.el;import org.apache.commons.io.IOUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.PropertySource; import org.springframework.context.support.PropertySourcesPlaceholderConfigurer; import org.springframework.core.env.Environment; import org.springframework.core.io.Resource;@Configuration @ComponentScan("com.wisely.highlight_spring4.ch2.el") @PropertySource("classpath:test.properties") public class ElConfig {@Value("I Love You!") //1private String normal;@Value("#{systemProperties['os.name']}") //2private String osName;@Value("#{ T(java.lang.Math).random() * 100.0 }") //3private double randomNumber;@Value("#{demoService.another}") //4private String fromAnother;@Value("classpath:test.txt") //5private Resource testFile;@Value("http://www.baidu.com") //6private Resource testUrl;@Value("${book.name}") //7private String bookName;@Autowiredprivate Environment environment; //7@Bean //7public static PropertySourcesPlaceholderConfigurer propertyConfigure() {return new PropertySourcesPlaceholderConfigurer();}public void outputResource() {try {System.out.println(normal);System.out.println(osName);System.out.println(randomNumber);System.out.println(fromAnother);System.out.println(IOUtils.toString(testFile.getInputStream()));System.out.println(IOUtils.toString(testUrl.getInputStream()));System.out.println(bookName);System.out.println(environment.getProperty("book.author"));} catch (Exception e) {e.printStackTrace();}} }8、Main的內(nèi)容
package com.wisely.highlight_spring4.ch2.el;import org.springframework.context.annotation.AnnotationConfigApplicationContext;public class Main {public static void main(String[] args) {AnnotationConfigApplicationContext context =new AnnotationConfigApplicationContext(ElConfig.class);ElConfig resourceService = context.getBean(ElConfig.class);resourceService.outputResource();context.close();} }9、最終運(yùn)行的結(jié)果
總結(jié)
以上是生活随笔為你收集整理的Spring4中的@Value的使用(学习笔记)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 西安小吃街外面有米饭店吗?
- 下一篇: 黄焖鸡米饭家常做法?