Spring注解驱动开发实现属性赋值

网友投稿 300 2022-12-09


Spring注解驱动开发实现属性赋值

前言

在实际开发当中,Spring中bean的属性直接赋值用的不是太多,整理这方面的资料,做一个小结,以备后续更深入的学习。

通过配置文件的方式

以配置文件的方式启动spring容器时,可以使用property标签的value给bean的属性赋值,赋值的形式有以下几种:

<--通过context:property-placeholder将properties文件中的值加载的环境变量中(properties中的属性值最终是以环境变量的形式存储的)>

<--①通过基本数值直接赋值-->

<--②通过${}取出配置文件中的值-->

   <--③通过Spring的El表达式-->

     <---->

classpath下的properties文件内容

person.age=\u5C0F\u674E\u56DB

通过注解的方式

使用properties的value对应的注解给属性赋值

//使用@PropertySource读取外部配置文件中的k/v保存到运行的环境变量中;加载完外部的配置文件以后使用${}取出配置文件的值

@PropertySource(value={"classpath:/person.properties"})

@Configuration

public class MainConfigOfPropertyValues {

@Bean

public Person person(){

return new Person();

}

}

public class Person {

//使用@Value赋值;

//1、基本数值

//2、可以写SpEL; #{}

//3、可以写${};取出配置文件【properties】中的值(在运行环境变量里面的值)

@Value("张三")

private String name;

@Value("#{20-2}")

private Integer age;

/* @Value("${person.age}") private Integer age;*/

}

注:

外部配置文件中的k/v保存到运行的环境变量中,可以直接在环境变量中取出对应的值

AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(MainConfigOfPropertyValues.class);

ConfigurableEnvironment environment = applicationContext.getEnvironment();

String property = environment.getProperty("person.age");


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Centos中yum方式安装java的实现示例
下一篇:Java线程的生命周期命名与获取代码实现
相关文章

 发表评论

暂时没有评论,来抢沙发吧~