ApplicationContext.xml文件中
-
< bean > 标签实际上是将为了将创建对象的步骤从java程序中脱离出来,即在xml中new一个对象,而不是在java程序中new对象。如:
<bean id="userDaoId" class="com.itheima.ioc.UserDaoImpl"/>
等效于:
UserDaoImpl userDaoId = new UserDaoImpl();
userDaoId则是这个对象的名字。 -
< property >标签则是为了给userDao对象中的变量赋值所提供的一个标签。参数name的值为变量名。参数value的值则是为基本数据类型的变量赋值,参数ref则是为引用数据类型的变量赋值。即:
<property name="变量名" value/ref="变量值">
等效于:
基本数据类型/引用数据类型 变量名 = 变量值;
name的值要与类中的变量名对应,而id名则可自己命名
举个栗子:
下图表示:创建了一个名为userDaoId的实例对象和一个userServiceId的实例对象,并将userDaoId赋值给userServiceId对象里的userDao变量(把userDaoId注入给userServiceId)。此例子中的变量为引用类型,所以用ref。
在userServiceImpl中要有userDao的Setter方法才可以注入

用java程序描述即为:
UserDaoImpl userDaoId = new UserDaoImpl();
UserService userServiceId = new UserService();
userServiceId.userDao = userDaoId;
1238

被折叠的 条评论
为什么被折叠?



