Action要new一个service对象,Service中又要new一个Dao对象,如今把new的过程交给spring来操做mysql 1 建立service类和dao类web (1)在service获得dao对象spring 2 具体实现过程(不经过new)sql (1)在service里面把dao做为类型属性数组 (2)生成dao类型属性的set方法服务器 (3)配置文件中注入关系spa |
控制台:3d service......code dao.........对象 得知,在类中注入对象类型属性完成 |
在一个标签中不能写多个相同的属性,用名称空间能够区分不一样的属性 引入名称空间 |
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> |
(1)IOC: 控制反转,把对象建立交给spring进行配置 (2)DI: 依赖注入,向类里面的属性中设置值 (3)关系:依赖注入不能单独存在,须要在ioc基础之上完成操做 |
1 加载spring核心配置文件, (1)new对象,功能能够实现,效率很低 2 实现思想:把加载配置文件和建立对象过程,在服务器启动时候完成 3 实现原理 (1)ServletContext对象 (2)监听器 (3)具体使用: - 在服务器启动时候,为每一个项目建立一个ServletContext对象 - 在ServletContext对象建立时候,使用监听器能够具体到ServletContext对象在何时建立 - 使用监听器监听到ServletContext对象建立时候, -- 加载spring配置文件,把配置文件配置对象建立 -- 把建立出来的对象放到ServletContext域对象里面(setAttribute方法) - 获取对象时候,到ServletContext域获得 (getAttribute方法) |