springboot:@Configuration&@Bean
程序员文章站
2022-07-10 21:09:31
...
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!";
}
=======================================================
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!";
}
上一篇: 好像没聊过吧
下一篇: 从后往前遍历线性表可以节省一个类型的内存
推荐阅读
-
springboot源码怎么看(springboot源码深度解析)
-
springboot中使用redis的方法代码详解
-
springboot2.0和springcloud Finchley版项目搭建(包含eureka,gateWay,Freign,Hystrix)
-
简述springboot及springboot cloud环境搭建
-
Springboot Cucumber测试配置介绍详解
-
详解如何在SpringBoot里使用SwaggerUI
-
SpringBoot2.0 整合 Shiro 框架,实现用户权限管理
-
SpringBoot2.0 整合 SpringSecurity 框架,实现用户权限安全管理
-
springboot windows10风格 activiti 整合项目框架源码 shiro 安全框架 druid
-
[springboot 开发单体web shop] 3. 用户注册实现