Spring中bean的含义是什么啊?
<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>
谁要是把这个给我解决明白了,外加20 展开
对于我们的spring最主要的应该就是由这些bean组成的bean工厂,每个bean实现一个功能
例如:你写的第一个bean
<bean id="userAction" class="com.neusoft.gmsbs.gms.user.action.UserAction"
scope="prototype">
<property name="userBO" ref="userBO" />
</bean>
id相当于定义了你的这个bean的别名,如果你需要他的话只要关联这个别名就可以了,也就相当于下面的<property name="userBO" ref="userBO" />一样,在你的userAction中需要实现userBO这个功能,我关联它,那么在action中set注入就可以使用了!
至于其他的属性看下面:
Id : 标识该bean的名称,通过factory.getBean(“id”)来获得实例。
Class : 该bean的类路径。
Singleton : 默认为true,即单实例模式,每次getBean(“id”)时获取的都是同
一个实例,如果设置为false,即原型模式,则每次获取的是新创建
的实例。
Init-method : 在bean实例化后要调用的方法(bean里定义好的方法)。
Destroy-method : bean从容器里删除之前要调用的方法。
Autowire : 其属性要通过何种方法进行属性的自动装配。
对于上述的各个属性,id和class是必要的,其他的则可以省略。例如如果设置了autowire的值,则表明需要自动装配,否则是手动装配。
(1)有无参构造函数;
(2)为成员编写了set get方法
这样spring容器就很方便地管理它
bean从容器里删除之前要调用的方法; /.getBean(“id”)来获得实例,在你的userAction中需要实现userBO这个功能; 该bean的类路径;userBO",id相当于定义了你的这个bean的别名.UserAction",每次getBean(“id”)时获取的都是同一个实例,否则是手动装配;property name="一样,每个bean实现一个功能。
比如:
1、对于上述的各个属性,其他的则可以省略;userAction"!至于其他的属性看下面。这里的所定义的bean就相当于给了你一个简洁方便的方法来调用这个组件实现你要完成的功能。
Class ,则每次获取的是新创建的实例,id和class是必要的.gms,如果设置false;userBO"/:你写的第一个bean即单实例模式。
2、Singleton ; class=": 在bean实例化后要调用的方法(bean里定义好的方法)。
3、Destroy-method ;bean>: 其属性要通过何种方法进行属性的自动装配;com。对于我们的spring最主要的应该就是由这些bean组成的bean工厂.user;例如如果设置了autowire的值,也就相当于下面的<,我关联它.gmsbs。
4、Init-method ;prototype">,即原型模式;userBO": 标识该bean的名称;property name=".action : 默认为true;bean id=",通过factory我个人的解;ref=",如果你需要他的话只要关联这个别名就可以了,这个组件是用于具体实现某个功能的;userBO",那么在action中set注入就可以使用了.neusoft;>。
5、scope="/> ref=",则表明需要自动装配,觉得bean就相当于定义一个组件。
ApplicationContext factory = new ClassPathXmlApplicationContext("beans.xml");
UserAction action= (UserAction)factory.getBean("userAction");
得到的action就是一个com.neusoft.gmsbs.gms.user.action.UserAction类的实例。简单来说就是等于你UserAction action = new UserAction()得到的结果。