Spring框架的开发学习:第一节 创建对象
学习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使用jndi数据源
下一篇: 持久层快速入门系列一
推荐阅读
-
动力节点Java学习资料最火热的极速开发框架Spring Boot
-
Spring框架学习——AOP的开发
-
Spring框架创建对象的方式
-
spring boot框架学习7-spring boot的web开发(3)-自定义消息转换器
-
spring boot框架学习9-spring boot的web开发(5)-错误解决及跳转页面
-
spring boot框架学习6-spring boot的web开发(2)
-
spring boot框架学习8-【干货】spring boot的web开发(4)-自定义拦截器处理权限
-
Spring框架的开发学习:第一节 创建对象
-
JavaWeb学习-Spring框架-3-Spring配置详解之Bean元素和三种对象的创建方式
-
Spring学习之三种创建对象的方式