亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

一分鐘學會spring注解之@value注解

標簽:
Java

今天主要来简单介绍一下@value注解的使用,在讲@value注解使用前,先让我们一起来看看原先xml方式是怎么注入属性参数的


首先在xml中定义一个bean如下:把对应的参数以property中value的形式注入


<!-- 定义一个id为user的bean对象 -->
   <bean id="user" class="com.zhang.bean.User">
       <property name="age" value="26"></property>
       <property name="userName" value="zhangsan"></property>
   </bean>



测试代码如下:



// 使用ClassPathXmlApplicationContext获取spring容器ApplicationContext
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("beans.xml");
// 根据bean id获取bean对象
User bean = (User) applicationContext.getBean("user");
System.out.println(bean);



运行结果如下:可以发现已经获取到xml中配置的属性了


User [userName=zhangsan, age=26]



接下来我们来看看用@value注解要怎么实现,首先在User对象的属性中增加@value注解如下:



/**
* 用户名
*/

@Value("张三")
private String userName;
/**
* 年龄
*/

@Value("26")
private Integer age;



配置类如下:



@Configuration
public class MainConfig {
   /**
    * 定义一个bean对象
    * @return
    */

   @Bean
   public User getUser(){
       return new User();
   }
}



测试类如下:



AnnotationConfigApplicationContext applicationContext2 = new AnnotationConfigApplicationContext(MainConfig.class);
User bean = applicationContext2.getBean(User.class);
System.out.println("实例1 === "+bean);
applicationContext2.close();



运行结果如下:



实例1 === User [userName=张三, age=26]



怎么样发现我们同样获取到了对应的值,有人可能会觉得这样配置并不是特别方便,甚至觉得这样比较麻烦,那下边我们一起来看下@value几种数值填充方式


  1. 基本数值的填充  这个上面演示的就是

  2. 基于SpEl表达式#{}  如上文中年龄也可以这样#{28-2}

  3. 基于配置文件${配置文件中参数名}


點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消