目录

基本概念

代码与实例

程序打包下载


基本概念

@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注解的使用(可用于配置文件)相关推荐

  1. Java工作笔记-注解的进一步理解

    目录 基本概念 代码与实例 基本概念 注解:说明程序,给计算机看的. 注释:给程序员看的. 作用分类: 编写文档:通过代码里标识的注解生成文档javadoc(生成doc文档) 代码分析:通过代码里标识 ...

  2. Java基础笔记 – Annotation注解的介绍和使用 自定义注解

    1.Annotation的工作原理: JDK5.0中提供了注解的功能,允许开发者定义和使用自己的注解类型.该功能由一个定义注解类型的语法和描述一个注解声明的语法,读取注解的API,一个使用注解修饰的c ...

  3. Java学习笔记7-1——注解与反射

    目录 注解 注解是啥 内置注解 元注解 @Target @Retention @Documented @Inherited 自定义注解 反射 静态语言 和 动态语言 Java 反射机制概述 Java ...

  4. Java学习笔记之--------注解(Annotation)

    注解的定义 注解(Annotation),也叫元数据.一种代码级别的说明.它是JDK1.5及以后版本引入的一个特性,与类.接口.枚举是在同一个层次.它可以声明在包.类.字段.方法.局部变量.方法参数等 ...

  5. Java工作笔记-对反射的进一步理解

    目录 基本概念 代码与实例 基本概念 反射的进一步理解: 将类的各个组成部分封装为其他对象(将一个类的组成部分封装为其他对象) 就是反射. Java代码经历的三个阶段: 1. 写好代码.java后使用 ...

  6. Java工作笔记-webService发布时通用的4个注解

    @WebService @WebMethod @WebResult @WebParam @WebService对类进行注解 1. serviceName:对外发布的服务名,指定WebService服务 ...

  7. Java工作笔记/Java面试题/Java八股文/Java常用API

    码农工具包 hutool工具 hutool工具类判断各种类型数据 <!-- https://mvnrepository.com/artifact/cn.hutool/hutool-all --& ...

  8. Java学习笔记7-2——注解与反射

    目录 理解 Class 类并获取 Class 实例 Class类 获取 Class 类的实例 哪些类型可以有Class对象 所有类型的Class对象 从内存角度分析类加载[重点] 类加载的过程 什么时 ...

  9. Java工作笔记-使用jquery.timer.js实现数据自动刷新

    程序运行截图如下: 程序结构如下: 源码如下: HelloServlet.java package my;import java.io.IOException; import java.io.Prin ...

最新文章

  1. 黄聪:IE6下css大bug:文字神秘消失,鼠标选择了才出现
  2. linux error errno 错误对照
  3. Linux内核spin_lock与spin_lock_irq分析
  4. 全球及中国生物质能利用产业十四五发展目标及前景容量预测报告2021-2027年
  5. 政府、学校、企业都需要的轻量级数据填报方案
  6. 来自开发者的点赞 · 网易云信揽获三大技术奖项
  7. ADSL提速 从入门到精通
  8. 《金狐系统维护盘》六周年纪念版UD/ISO +PE维护
  9. 在ubuntu中搭建guacamole
  10. JQuery插件iScroll实现下拉刷新,滚动翻页特效
  11. python popular sites
  12. 51单片机(AT89S52)设计简单计算器(4位加减乘除)
  13. UE4相机贴图,屏幕标注
  14. JS将sql的dateTime格式数据例如:Wed Sep 30 00:00:00 CST 2020 字符串转换成2020-09-30 00:00:00时间格式
  15. 大数据相加_大数据的相加和相乘
  16. 算法85----手机九宫格
  17. C语言复杂构造数据类型ppt,复杂构造数据类型.ppt
  18. PLS-00201: ORA-20000:
  19. mongodb中的read concern和write concern
  20. 二、Apollo高精地图详解(2. 高精地图的采集、生产与格式规范)

热门文章

  1. DM***+OSPF测试
  2. C/C++编程笔记:浅析 C 语言中宏定义的使用,知识点全解
  3. 管理者必看!深度剖析BI与数据仓库,企业能否成功转型就看它
  4. 自动推荐图表、智能分析,这个分析工具有点酷!
  5. 即这样的WZSZF01代码是错误的
  6. typedef让p去除了普通变量的C++身份
  7. 09-03-06 FreeEIM 姗姗来迟
  8. C++ Templates 中的一个例子
  9. 程序员如何接私单做SOHO一族
  10. 25岁,一位女程序员的幸运几年