Java工作笔记-@Value注解的使用(可用于配置文件)
生活随笔
收集整理的這篇文章主要介紹了
Java工作笔记-@Value注解的使用(可用于配置文件)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄
?
?
基本概念
代碼與實例
程序打包下載
?
?
基本概念
@Value:注入配置文件中的內容。只要是spring的注解類(service,compotent,?dao等)中都可以。
@Component:泛指組件,當組件不好歸類的時候,可以使用這個注解進行標注。
@AutoWired:自動導入依賴的bean。byType方式。把配置好的Bean拿來用,完成屬性、方法的組裝,它可以對類成員變量、方法及構造函數進行標注,完成自動裝配的工作。
所以必須是使用Spring或Spring Boot的注解類,就可以使用@Value注解。
下面是使用@Component進行的。剛好,單例模式也解決了,用框架是真的爽。
?
?
代碼與實例
程序運行截圖:不接參數時:
這個和application.properties一樣
#自定義屬性 my.string=How are you my.string2=How old are youredis.ip=127.0.0.1 redis.port=6888 redis.passwd=it1995接如下參數:
java -jar demo-0.0.1-SNAPSHOT.jar --my.string=www.it1995.cn運行截圖如下:
關鍵代碼如下:
JavaConf.java
package com.example.demo.conf;import lombok.Data; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component;@Data @Component public class JavaConf {@Value("${my.string}")private String string1;@Value("${my.string2}")private String string2;@Value("${redis.ip}")private String redisIP;@Value("${redis.port}")private Integer redisPort;@Value("${redis.passwd}")private String redisPW;}DemoApplication.java
package com.example.demo;import com.example.demo.conf.JavaConf; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.CommandLineRunner; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication public class DemoApplication implements CommandLineRunner {public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);}@AutowiredJavaConf javaConf;@Overridepublic void run(String... args) throws Exception {System.out.println("\n\n\n");System.out.println("\n\n\n");System.out.println("\n\n\n");System.out.println("begin");System.out.println(javaConf);System.out.println("---------- 華麗的分割線 ----------");System.out.println("\n\n\n");System.out.println("\n\n\n");} }pom.xml
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.21.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.example</groupId><artifactId>demo</artifactId><version>0.0.1-SNAPSHOT</version><name>demo</name><description>Demo project for Spring Boot</description><properties><java.version>1.7</java.version></properties><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.10</version></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>?
?
程序打包下載
下載地址:https://github.com/fengfanchen/Java/tree/master/AnnotateValue
?
總結
以上是生活随笔為你收集整理的Java工作笔记-@Value注解的使用(可用于配置文件)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java学习笔记-Spring IoC
- 下一篇: Spring Boot通过@Reques