- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
spring笔
spring笔记
day01
1 什么是spring,有什么作用
Spring是一个整合框架,可以与jdbc
Spring框架的主要功能:
*a、spring框架核心提供了一个容器,该容器具有工厂功能,可以创建和管理组件。
*b、spring提供了IoC机制,可以实现组件关联的解耦
*c、spring提供了AoP机制,可以实现共通处理和目标组件解耦
d、spring提供了与struts、hibernate技术整合一套api
e、spring提供了一个mvc实现
2 Spring框架的基本应用
1)工厂容器的使用
可以将程序组件进行创建和管理,也是应用IoC和AoP的基础
a、使用方法
--首先引用spring-ioc开发包
--再引入配置文件applicationContext.xml
在DAO在配置中定义
bean id=标识符 class=包名.类名/bean
--创建spring容器对象获取bean组件实例
b、案例
首先创建一个接口ICostDao.java
public interface ICostDao {
void add();
void delete();
}
再创建一个实现上面借口的类 JdbcCostDao.java
public class JdbcCostDao implements ICostDao{
public void add() {
System.out.println(spring模拟添加);
}
public void delete() {
System.out.println(spring模拟删除);
}
}
第三步,在applicationContext.xml配置:
bean id=costDao class=dao.JdbcCostDao/bean
第四步,测试
public class Test1 {
public static void main(String[] args) {
String conf=applicationContext.xml;
//实例化spring容器对象
AbstractApplicationContext ac=
new ClassPathXmlApplicationContext(conf);
//获取容器中id=costDao的Bean对象
ICostDao dao=(ICostDao) ac.getBean(costDao);
dao.add();
dao.delete();
}
}
c、工厂容器的特点
--控制bean对象创建模式
bean有一个scope属性:
singleton:单例创建Bean对象(默认)
prototype:非单例创建Bean对象
--控制单例Bean创建的时机
默认是在容器实例化的时候创建的(推荐使用)
使用bean的lazy-init属性可以将单例Bean对象创建推迟到getBean方法调用
--控制对象初始化和销毁处理
init-method:初始化创建
destroy-method:用于指定bean对象销毁方法。(该属性仅使用单列Bean对象)
2)Spring的IoC使用
a、什么是IoC:Inversion of Controll 控制反转
本质原理:改变对象创建方式,由主动创建对象使用,变为对象创建交给第三方框架或容器负责
解决什么问题?
降低两个组件之间的耦合(解耦);
b、IoC使用方法
c、DI技术(Dependency Injection)
spring框架采用了DI技术实现IoC
DI技术主要有两种方式:
--setter方式
依靠属性的set方法
第一步:创建AddAction类
public class AddAction {
private ICostDao dao;
//提供属性的set方法
public void setDao(ICostDao dao){
this.dao=dao;
}
public String execute(){
System.out.pr
文档评论(0)