Spring简单应用(一)

Spring介绍

      Spring是开源的、轻量级的框架,是管理对象的容器。主要功能有:IOC、AOP、Spring 关于jdbc的支持、与Junit的整合测试。


一、Spring环境搭建

    1、导入包  4个核心包+2个日志包

    2、创建一个对象

    3、将对象注册到spring容器中

          默认spring配置文件可以任意起名,但建议写成applicationContext.xml

          默认路径可以是src下的任意路径,但是建议写在src下(其实就是classpath下)。

4、约束的导入

5、编写xml

   <!-- Admin-->

   <beanname="admin" class="com.jnmd.pojo.Admin" >

6、测试


Spring配置(包括属性注入)

1、bean标签

     Class: 被管理对象的完整路径

     Name:给被管理的对象起个名字,便于获取对象的时候使用。

     Id:与name属性一样,但是名字不能重复。

     建议使用name。

     Scope:singleton(默认值) 单例对象

        在spring中只创建一个实例化对象

     Prototype: 多例原型

        在spring中创建多个对象,一般我们不会指定为多例对象,但是如果将来整合structs2整合的时候,需要指定为多例,多例时,web容器启动时,不会创建该对象,每次使用时创建一次,即使用一次创建有一次。

     Init-method:

        创建一个方法作为生命周期的初始化方法,spring会在创建对象的时候调用该方法。

     Destory-method:

        创建一个方法作为生命周期的销毁方法,spring会在销毁对象的时候调用该方法。

 

  2.spring 容器创建对象

      1)空构造方法(最重要)

         <beanname="admin" class="com.jnmd.pojo.Admin" ></bean>

      2)静态工厂

            <!-- 通过静态工厂创建 -->

            <bean name="admin2"                              class="com.jnmd.spring.BeanFactory"

     factory-method="createAdmin"></bean>

      3)实例工厂

    <!-- 通过实例工厂创建 -->

   <bean name="beanFactory" class="com.jnmd.spring.BeanFactory"></bean>

   <bean name="admin3"  factory-bean="beanFactory"      factory-method="createAdmin2" >   </bean>

 3、属性注入

1)set方法注入

<bean name="admin" class="com.pojo.Admin">

        值类型的注入

        <property name="username" value="kangshifu"></property>

        <property name="password" value="z1h2i3y4o5U"></property>

        对象类型的注入

        <property name="car" ref="car2" ></property>

   </bean>

  

   <bean name="car2" class="com.jnmd.pojo.Car">

       <propertyname="name" value="五菱宏光"></property>

       <propertyname="color" value="红色"></property>

  </bean>

2)构造方法注入

<bean name="admin" class="com.pojo.Admin">

        参数数量和类型一定要和构造方法保持一致

        <constructor-arg name="username"value="zhangsanfeng"></constructor-arg>

        <constructor-arg name="password" value="2342343"type="java.lang.Integer"></constructor-arg>

        <constructor-arg name="auth" value="zengshangaicha"></constructor-arg>

        <constructor-arg name="car" ref="car2"></constructor-arg>

  </bean>

3)复杂类型注入

<bean name="collection"class="com.jnmd.pojo.CollectionDemo">

     <!-- 可行,但是只能添加一个 -->

     <!--  <propertyname="arr" value="hehe"></property>-->

     <!-- array注入,可以注入多个元素 -->

     <property name="arr">

        <array>

           <value>hehe</value>

     <value>haha</value>

           <value>heihei</value>

           <!-- <ref bean="car"/> -->

        </array>

     </property>

     <property name="list">

        <list>

           <value>java</value>

           <value>js</value>

           <value>h5</value>

           <ref bean="car2"/>

        </list>

     </property>

     <property name="map">

       <map>

           <entry key="url" value="localhost:3306/crm"></entry>

           <entry key="username" value="yywereu"></entry>

           <entry key="password" value="23748329"></entry>

           <entry key-ref="admin" value-ref="car2"></entry>

       </map>

     </property>

     <property name="properties">

       <props>

          <prop key="username">zhangsan</prop>

          <prop key="grade">5年级</prop>

       </props>

     </property>

    

  </bean>

  <!-- 位置在bean之外,注意路径 ,导入成功后,当前的xml就可以使用之前的bean-->

  < import resource= "applicationContext.xml" />



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值