欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Spring框架的开发学习:第一节 创建对象

程序员文章站 2022-05-24 16:11:20
...

学习Spring首先我们要清楚,Spring框架是用来干嘛的,Spring是一个开源的,用来简化企业级应用开发的应用 开发框架。

在应用程序开发过程中,Spring帮助我们解决的以下几个方面的问题:

 1.简化开发

    Spring对常用的API(比如jdbc)做了封装,这样帮助我们,大大简化了这些API的使用,(比如使用springjdbc访问数据库,就不用考虑如何获取连接和关闭连接了)

2.解耦

    spring帮助我们建立对象之间的依赖关系,对象之间的依赖关系大大降低,代码的维护性大大提高。

3.集成其他框架

    Spring可以将其他的一些框架集成进来(比如用于定时任务处理的Quartz等),方便这些框架的使用

Spring框架中的核心模块,就是Spring容器,用于管理对象,也是今天学习的重点。


在启动Spring容器时,第一步需要导入Spring的依赖的jar包(spring-webmvc).

第二步添加spring的配置文件(applicationcontext.xml).

第三步启动容器.

代码如下:

     String config = "applicationcontext.xml";

/* ApplicationContext是接口,ClassPathXmlApplicationContext是一个实现类,该类会根据类路径去查找spring的配置文件,然后启动容器*/

 ApplicationContext   ac  = new ClassPathXmlApplicationContext(config);


一、创建对象

    1)方式一  使用无参构造器创建对象

       step1.为类添加无参构造器

       step2.在配置文件中添加bean元素(注:bean就是容器所创建的对象

   

  <!-- id:bean的名字,要求唯一。

           class:完整的类名,类的全限定名。

          -->

         <bean id="stu" class="first.strdnt"></bean>

      step3.启动容器,调用getBean方法。

 2)静态工厂方法

     

  <!-- factory-method:指定一个静态方法,容器会调用该类的静态方法来创建一个对象。

         -->

       <bean id="cal" class="java.util.Calendar"

              factory-method="getInstance"/>

   3)实例工厂方法

   

  <!-- factory-bean:指定一个bean的id,容器会调用该bean的实例方法来创建实例。-->

        <bean  id="time”    factory-bean=“cal”   factory-method=“getTime”/>

二、作用域

   1)默认情况下,容器对于每个bean只会创建一个实例。

  2)如果将作用于设置为“prototype”,则每调用一个getBean方法,就会创建一个实例。

<!-- scope:用来指定作用域,缺省值是singleton(单例,即只会有一个对象)

   如果值是prototype,则每调一次getBean方法就会创建一个新的实例。

      lazy-init:如果值为true,表示延迟加载 -->

 <bean id=“t”  class=“basic.Teacher"   scope="singleton"  lazy-init="true"/>

三、延迟加载

  1)默认情乱下,容器启动之后,会将作用域为”singleton“的bean创建好

  2)延迟加载指的是,容器启动之后,作用域为”singleton“的bean不在创建,直到调用的getBean方法之后才创建。

四、生命周期

   1)初始化方法:容器创建好bean的实例之后,会立即调用初始化方法。

   2)销毁方法:容器关闭之间,会调用销毁方法。

<!-- init-method: 指定初始化方法名 。

      destory-method:指定的销毁方法名。

   注意:销毁方法只对作用域为singleton的bean有效 -->

<bean id="arr"  calss="java.util.Array"  init-method=”init”   destory-method=“destory”/>


到此为止,spring对象的创建就说完了。

相关标签: spring创建bean