• spring- 注解---values


          spring- 注解---values

     

    package com.zwj.bean;
    
    import org.springframework.beans.factory.annotation.Value;
    
    public class Person {
        
        //使用@Value赋值;
        //1、基本数值
        //2、可以写SpEL; #{}
        //3、可以写${};取出配置文件【properties】中的值(在运行环境变量里面的值)
        
        @Value("张三")
        private String name;
        @Value("#{20-2}")
        private Integer age;
        
        @Value("${person.nickName}")
        private String nickName;
        
        
        
        public String getNickName() {
            return nickName;
        }
        public void setNickName(String nickName) {
            this.nickName = 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 Person(String name, Integer age) {
            super();
            this.name = name;
            this.age = age;
        }
        public Person() {
            super();
            // TODO Auto-generated constructor stub
        }
        @Override
        public String toString() {
            return "Person [name=" + name + ", age=" + age + ", nickName=" + nickName + "]";
        }
    
        
        
        
        
        
        
    
    }
    Person
    package com.zwj.config;
    
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.context.annotation.PropertySource;
    
    import com.zwj.bean.Person;
    
    //使用@PropertySource读取外部配置文件中的k/v保存到运行的环境变量中;加载完外部的配置文件以后使用${}取出配置文件的值
    @PropertySource(value={"classpath:/person.properties"})
    @Configuration
    public class MainConfigOfPropertyValues {
        
        @Bean
        public Person person(){
            return new Person();
        }
    
    }
    MainConfigOfPropertyValues
    person.nickName=u5C0Fu674Eu56DB
    person.properties
    package com.zwj.test;
    
    import org.junit.Test;
    import org.springframework.context.annotation.AnnotationConfigApplicationContext;
    import org.springframework.core.env.ConfigurableEnvironment;
    
    import com.zwj.bean.Person;
    import com.zwj.config.MainConfigOfPropertyValues;
    
    public class IOCTest_PropertyValue {
        AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(MainConfigOfPropertyValues.class);
        @Test
        public void test01(){
            printBeans(applicationContext);
            System.out.println("=============");
            
            Person person = (Person) applicationContext.getBean("person");
            System.out.println(person);
            
            
            ConfigurableEnvironment environment = applicationContext.getEnvironment();
            String property = environment.getProperty("person.nickName");
            System.out.println(property);
            applicationContext.close();
        }
    /*
    person
    Person [name=张三, age=18, nickName=小李四]
    小李四    
     */
        private void printBeans(AnnotationConfigApplicationContext applicationContext){
            String[] definitionNames = applicationContext.getBeanDefinitionNames();
            for (String name : definitionNames) {
                System.out.println(name);
            }
        }
    
    }
    IOCTest_PropertyValue
    <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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>com.zwj</groupId>
      <artifactId>spring-annotation---values</artifactId>
      <version>0.0.1-SNAPSHOT</version>
      
      <dependencies>
            <!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-context</artifactId>
                <version>4.3.12.RELEASE</version>
            </dependency>
            <!-- https://mvnrepository.com/artifact/junit/junit -->
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.12</version>
                <scope>test</scope>
            </dependency>
    
        </dependencies>
    </project>
    pom.xml
  • 相关阅读:
    vue全局启用 emulateJSON 选项
    vue全局配置数据接口的根域名
    CSS实现按钮YES-NO按钮+Jquery获取按钮状态。
    Redis命令
    在js中获取 input checkbox里选中的多个值
    Python中常见字符串去除空格的方法总结
    e.target.value和this的区别
    用脚本来运行scrapy crawl ...
    生成器的两种方式
    python中ord()函数,chr()函数,unichr()函数
  • 原文地址:https://www.cnblogs.com/ou-pc/p/9860990.html
Copyright © 2020-2023  润新知