spring学习笔记(IOC)
2013-02-26 15:45 hduhans 阅读(114) 评论(0) 收藏 举报1.在spring配置文件xml中,bean可以用name,也可以用id,效果一样
2.简单属性的注入,<property name="" value="">
例:
View Code
//定义 package com.bjsxt.service; import com.bjsxt.dao.UserDAO; import com.bjsxt.model.User; public class UserService { private UserDAO userDao; private String name; //注入属性name的值 public String getName() { return name; } public void setName(String name) { this.name = name; } public UserDAO getUserDao() { return userDao; } public void setUserDao(UserDAO userDao) { this.userDao = userDao; } public void add(User u){ userDao.save(u); System.out.println("my name is "+name); } }
配置xml
View Code
<bean name="userService" class="com.bjsxt.service.UserService"> <property name="name" value="hanganglin"></property> <property name="userDao" ref="u" /> </bean>
3.bean的scope
值:①singleton 共享实例 ②prototype不共享实例,每次请求新建一实例
4.自动装配 autowire
值:①byName ②byType
例:
<bean name="userDao" class="com.bjsxt.dao.impl.UserDAOImpl_oracle"></bean>
<bean name="userService" class="com.bjsxt.service.UserService" autowire="byType"></bean>
在调用userService时 会根据com.bjsxt.service.UserService中含有的userDao变量 自动去装配userDao这个bean
5.lazy-init=“true” spring启动时不加载对应的bean,只有在使用到的时候再加载
6.init-method destroy-method 指定bean加载和消亡时调用的方法,方法体在bean对应的类中
如:<bean name="userService" class="com.bjsxt.service.UserService" init-method="myInit" destroy-method="myDestroy">
其中myInit和myDestroy是在com.bjsxt.service.UserService中定义的方法

浙公网安备 33010602011771号