注入对象类型属性(重点)
Action要new一个service对象,Service中又要new一个Dao对象,现在把new的过程交给spring来操作 1 创建service类和dao类 (1)在service得到dao对象 2 具体实现过程(不通过new) (1)在service里面把dao作为类型属性 (2)生成dao类型属性的set方法 (3)配置文件中注入关系 |
控制台: service...... dao......... 得知,在类中注入对象类型属性完成 |
P名称空间注入
在一个标签中不能写多个相同的属性,用名称空间可以区分不同的属性 引入名称空间 |
注入复杂类型属性
1 数组 2 list集合 3 map集合 4 properties类型 <!-- 注入复杂类型属性值 --> <bean id="person" class="cn.itcast.property.Person"> <!-- 数组 --> <property name="arrs"> <list> <value>凤姐</value> <value>芙蓉姐姐</value> <value>奶茶妹妹</value> </list> </property> <!-- list --> <property name="list"> <list> <value>唐嫣</value> <value>志玲</value> <value>柳岩</value> </list> </property> <!-- map --> <property name="map"> <map> <entry key="aa" value="熊大"></entry> <entry key="bb" value="熊二"></entry> <entry key="cc" value="光头强"></entry> </map> </property> <!-- properties --> <property name="properties"> <props> <prop key="driverclass">com.mysql.jdbc.Driver</prop> <prop key="username">root</prop> </props> </property> </bean> |
IOC和DI区别
(1)IOC: 控制反转,把对象创建交给spring进行配置 (2)DI: 依赖注入,向类里面的属性中设置值 (3)关系:依赖注入不能单独存在,需要在ioc基础之上完成操作 |
Spring整合web项目原理
1 加载spring核心配置文件, (1)new对象,功能可以实现,效率很低 2 实现思想:把加载配置文件和创建对象过程,在服务器启动时候完成 3 实现原理 (1)ServletContext对象 (2)监听器 (3)具体使用: - 在服务器启动时候,为每个项目创建一个ServletContext对象 - 在ServletContext对象创建时候,使用监听器可以具体到ServletContext对象在什么时候创建 - 使用监听器监听到ServletContext对象创建时候, -- 加载spring配置文件,把配置文件配置对象创建 -- 把创建出来的对象放到ServletContext域对象里面(setAttribute方法) - 获取对象时候,到ServletContext域得到 (getAttribute方法) |
最能让人感到快乐的事,莫过于经过一番努力后,所有东西正慢慢变成你想要的样子!