什么是Bean
来源:互联网 发布:python3 socket编程 编辑:程序博客网 时间:2024/05/18 15:57
Java Bean说白了就是java中的class,但是需要满足两个条件:
1.有无参构造函数
2,为成员对象设置了get set方法。
============================================
Bean和Spring的关系:
Bean相当于一个组件,这个组件用来实现一个功能,在Spring中定义Bean的目的是给你一个简单便捷的方法来调用一个组件,实现你需要的功能。
Spring可以看做是一个一个Bean组成的工厂(Factory),Bean用在Spring容器中,方便Spring容器来管理。
===========================================
Bean的属性:
1,ID,标志该Bean的名称,通过factory.getBean("id")来获得该Bean的实例。
2,class,该bean的类路径。有包名+类名组成,如 com.baidu.tieba.user.userLogin
3,Signleton,单例模式,默认为true,每次getBean(“id”)时获取的都是同一个实例,如果设置为false,即原型模式,则每次获取的是新创建的实例。
4,Init-method : 在bean实例化后要调用的方法(bean里定义好的方法)。
5,Destroy-method : bean从容器里删除之前要调用的方法。
6,Autowire : 其属性要通过何种方法进行属性的自动装配。
其中Id和Class是必须的属性,其它则可以缺省。
例如如果设置了autowire的值,则表明需要自动装配,否则是手动装配。
scope是bean的生命周期,有五种生命周期。参见Bean的作用域及生命周期
scope="prototype",等同于 Signleton="false",Bean默认是单例模式,通过设置scope="prototype",这样每次调用一个Action,都创建一个新的实例。保护数据安全。
不过在前台页面,需要数据传递的时候(这里看的很模糊,大概是这个意思,在某些时候需要使用原型模式)。
=====================举个栗子========================
<bean id="userAction" class="com.neusoft.gmsbs.gms.user.action.UserAction"scope="prototype"><property name="userBO" ref="userBO" /></bean><bean id="userBO" class="com.neusoft.gmsbs.gms.user.bo.impl.UserBOImpl"><property name="userDAO" ref="userDAO" /></bean><bean id="userDAO" class="com.neusoft.gmsbs.gms.user.dao.impl.UserDAOImpl"><property name="sqlMapClient" ref="sqlMapClient"></property></bean>
id相当于定义了你的这个bean的别名,如果你需要他的话只要关联这个别名就可以了,也就相当于下面的<property name="userBO" ref="userBO" />一样,在你的userAction中需要实现userBO这个功能,我关联它,那么在action中set注入就可以使用了!
- 什么是Bean
- 什么是Java bean
- 什么是JAVA Bean?
- EJB《什么是会话bean》
- 什么是Java bean
- 什么是Java bean
- 什么是JavaBean、bean? 什么是POJO、PO、DTO、VO、BO ? 什么是EJB、EntityBean?
- bean
- bean
- Bean
- Bean
- bean
- Bean
- Bean
- Bean
- bean
- BEan
- @Bean
- Android Permission访问权限大全
- 实现拖拽删除的TouchListener
- 浅谈Fragment
- 希尔排序的总结2
- MAC Mysql 解决中文乱码
- 什么是Bean
- xib使用
- Permutations
- HDU 2509 反尼姆博弈
- Python学习笔记7:函数对象及函数对象作参数
- linux source命令
- C++中引用与指针的区别(详细介绍)
- 由一个问题引发的思考——关于数据库的外键约束
- Linux rm命令详解