欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

hualinux spring 4.11:@Value 属性注入

程序员文章站 2022-05-29 15:14:37
...

目录

一、知识点

二、例子

2.1 相关实现

2.2 运行结果


@Value 属性注入 这个很简单,就是给类属性赋值。

一、知识点

给属性赋值,等同于xml中的 <bean> <property name="age" value="${}"></property>

1、基本数值

2、可以写SpEL #{}

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

 

二、例子

2.1 相关实现

建立一个YAML配置文件

src-->new-->File-->person.yml,内容如下:

nickName: hualinux

注:nickName冒号后面有一个空格的!!!

src-->com.hualinux.beans.Person.java

package com.hualinux.beans;

import org.springframework.beans.factory.annotation.Value;


public class Person {
    /*
     * 使用@Value赋值
     * 1. 基本数值
     * 2. 人可以写SpEL:#{}
     * 3.可以写${},取出配置文件[properties]中的值(在运行环境变量里面的值)
     * */
    @Value("阿华")
    private String name;
    @Value("#{28-2}")
    private Integer age;
    @Value("${nickName}")
    private String nickName;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", nickName='" + nickName + '\'' +
                '}';
    }
}

src-->conf.MainConfPerson.java 配置文件

package conf;

import com.hualinux.beans.Person;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;


//这个注解下章讲,
@PropertySource(value={"classpath:/person.yml"})
@Configuration
public class MainConfPerson {

    @Bean
    public Person person(){
        return new Person();
    }
}

src-->com.hualinux.beans.PersonMain.java 代码如下:

package com.hualinux.beans;

import conf.MainConfPerson;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;

public class PersonMain {
    public static void main(String[] args) {
        AnnotationConfigApplicationContext ctx=new AnnotationConfigApplicationContext(MainConfPerson.class);
        Person person= (Person) ctx.getBean("person");
        System.out.println(person);
    }
}

2.2 运行结果

运行com.hualinux.beans.PersonMain.java,结果

Person{name='阿华', age=26, nickName='hualinux'}

hualinux spring 4.11:@Value 属性注入