博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring中Bean的不同配置方式
阅读量:5202 次
发布时间:2019-06-13

本文共 1639 字,大约阅读时间需要 5 分钟。

Bean的配置方式一共分为三种:

1.基于XML(适用于第三方类库,无法在类中写注解以及写命名空间的配置等情况)

2.基于注解(适用于大部分情况)

3.基于Java类

 

以下是三种不同情况的配置方式

 

  基于XML 基于注解 基于Java类配置
Bean 的定义 <bean class="com.gin.UserName" />

@Component(或衍生@Repositry、@Service及@Controller)

public class UserName {...}

@Configuration

public class

Test{

@Bean

public UserName userName() {

return new   UserName();

}  

}

Bean的名称 <bean id="userName" class="com.gin.UserName" />

@Component("userName")//空的默认值为userName

public class UserName {...}

@Bean(”userName“)

public UserName userName() {

return new   UserName();

} 

Bean的注入

<property name="userName" ref-bean="userName" />

<p:userName-ref="userName">

public class UserService{

@Autowired

@Qualifier("userName")//@Qualifier是可选项

private UserName userName;

@Bean(”userName“)

public UserName userName() {

return new   UserName();

} 

 

@Bean

public UserService userService() {

UserService userService = new UserService();

userService.setUserName(userName());

@Autowired

private DaoUsername daoUsername;

 

@Bean

public UserService userService() {

UserService userService = new UserService();

userService.setUserName(daoUsername.userName())

Bean的生命过程方法

<bean id="userName" class="com.gin.UserName" init-method="init" destory-method="destory" /> //初始化和销毁都只有一个   

public class UserService{

@Autowired

private UserName userName;

 

@PostConstruct

public void init() {}

@PreDestory

public void destory() {}

}//初始化和销毁可以有多个

Bean的作用范围 bean id="userName" class="com.gin.UserName" scope="prototype" /> 

 

@Scope("protptype")

public class UserService{}

@Scope("protptype)

@Bean

public UserName userName() {

return new   UserName();

} 

转载于:https://www.cnblogs.com/jing-daye/p/5911138.html

你可能感兴趣的文章
具体解释MVP矩阵之ViewMatrix
查看>>
VS2012下没有ADO.NET实体数据模型
查看>>
Java 读取xml 文件
查看>>
2017-2018-1 20155320 课堂测试(ch06)
查看>>
我的android阅读软件“微读”v2.2又发布,加入微美图、微漫画、微美女阅读
查看>>
网络常用命令(转)
查看>>
QueryPerformanceFrequency
查看>>
同步调用和异步调用
查看>>
WebClient 下载文件
查看>>
wpf staticresource 是不允许向前引用(forward reference)的
查看>>
列表标签
查看>>
mysql 之 函数
查看>>
Android开发之Intent的传值--Application
查看>>
stack
查看>>
c语言指针问题---笔试遇到了,这里标记一下
查看>>
MySQL-插入数据(INSERT)
查看>>
iScroll的使用
查看>>
使用JAXP API
查看>>
从Jetty、Tomcat和Mina中提炼NIO构架网络服务器的经典模式(一)
查看>>
spring中的设计模式Observer pattern
查看>>