springboot:@Configuration&@Bean

Configuration:减少xml中配置,可以生命一个配置类来对bean进行配置
=======================================================
SpringConfig.java
============================
package org.spring.springboot.configs;

import org.spring.springboot.web.Student;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class SpringConfig {

    @Bean(name = "StudentBean")
    public Student student(){
        Student s = new Student();
        s.setName("studentBean");
        return s;
    }

    @Bean(name = "StudentsBean")
    public Student students(@Qualifier("StudentBean")Student student){
        return student;
    }

}
============================
EnviromentConfig.java
通过EnvironmentAware 获取env 来读取properties
============================
@Configuration
public class EnviromentConfig implements EnvironmentAware{

    private RelaxedPropertyResolver propertyResolver;

    /**
     * 这个方法只是测试实现EnvironmentAware接口,读取环境变量的方法。
     */
    @Override
    public void setEnvironment(Environment env) {
        String str = env.getProperty("server.port");
        System.out.println(str);
        propertyResolver = new RelaxedPropertyResolver(env, "server.");
        String value = propertyResolver.getProperty("port");
        System.out.println(value);
    }

}

============================
Controller中调用
============================
@Resource(name = "StudentBean")
    private Student studentBean;

@Resource(name = "StudentsBean")
    private Student studentsBean;

    @RequestMapping("/say")
    public String sayHello() {
        System.out.println(studentBean.getName());
        System.out.println(studentsBean.getName());
        return "Hello,World111!";
    }

猜你喜欢

转载自samson870830.iteye.com/blog/2382217
今日推荐