Spring_day01--注入对象类型属性(重点)_P名称空间注入_注入复杂类型属性_IOC和DI区别_Spring整合web项目原理

注入对象类型属性(重点)

Action要new一个service对象,Service中又要new一个Dao对象,如今把new的过程交给spring来操做mysql

1 建立service类和dao类web

(1)在service获得dao对象spring

2 具体实现过程(不经过newsql

(1)在service里面把dao做为类型属性数组

(2)生成dao类型属性的set方法服务器

(3)配置文件中注入关系spa

控制台:3d

service......code

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方法)

相关文章
相关标签/搜索