Spring中@Bean注解如何使用?
摘要:@Bean 作用: 该注解只能写在方法上,表明使用此方法创建一个对象,并且放入spring容器。 🌟 青柠来相伴,代码更简单。🌟 📚 本文所有内
@Bean
作用:
该注解只能写在方法上,表明使用此方法创建一个对象,并且放入spring容器。
====== 🌟 青柠来相伴,代码更简单。🌟 ======
📚 本文所有内容,我都整理成了文档资料。👇
🎯 搜索【青柠代码录】,关键字:青柠合集
🚀 即可查看所有博客文章 ~
====== 🌟 ================= 🌟 ======
属性:
name:给当前@Bean注解方法创建的对象,指定一个名称(即bean的id)。
/**
* 连接数据库的配置类
*/
public class JdbcConfig {
/**
* 创建一个数据源,并存入spring容器中
* @return
*/
@Bean(name = "dataSource")
public DataSource createDataSource() {
try {
ComboPooledDataSource ds = new ComboPooledDataSource();
ds.setUser("root");
ds.setPassword("1234");
ds.setDriverClass("com.mysql.jdbc.Driver");
ds.setJdbcUrl("jdbc:mysql:///spring_day02");
return ds;
} catch (Exception e) {
throw new RuntimeException(e);
}
}
/**
* 创建一个DBAssit,并且也存入spring容器中
* @param dataSource
* @return
*/
@Bean(name = "dbAssit")
public DBAssit createDBAssit(DataSource dataSource) {
return new DBAssit(dataSource);
}
}
通过XML配置文件注入JavaBean
创建一个Person类,作为测试的JavaBean
package com.meimeixia.bean;
public class Person {
private String name;
private Integer age;
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 + "]";
}
}
创建Spring的配置文件,例如beans.xml,通过该配置文件,将Person类注入到Spring的IOC容器中,该配置文件中的内容如下所示。
