Spring 4.x学习笔记 day01



Spring day 01

Spring 入门以及IOC容器

Spring开发步骤:

1.添加相关开发jar 包  (通常包含核心包和一些日志包,按需要加)

2.配置ApplicationContext.xml配置文件(即主要是配置bean)

3.获得bean对象

 

ApplicaitonContext接口:该接口里面的方法要好好研究

 

applicationContext.xml配置相关说明:

1.bean的默认作用域即singleton

2.bean默认是立即加载的,可以配置lazy延迟加载(bean或全上下文都可 以配置)

3.每个bean都有一个id 和 class(完整类路径配置

4.原生数据类型(value)引用数据类型(ref)

 

当我们看到完整的类路径的时候就要想到反射机制,没有反射机制就没有这些框架了。

 

如何减少Spring的配置文件:

*通过bean标签将公共的配置提取出来,然后指定bean标签中的abstract属性为true

*在其它bean标签中指定其parent 即可   

        其实挺类似java的继承

 

如何理清Spring的配置文件:

*即采用团队合作开发模式,将每个模块单独配置xml文件,然后使用导入到主配置

 

bean 的作用域:

*singleton(默认)

*prototype

*request

*session

 

根据类型/名字  完成自动装配 (我自己并不推荐,因为不利于我们看清楚bean 的结构)

 

练习:

1.基本数据类型,如何配置(StringListSetMapProperties、数组)

2.引用数据类型,如何配置(其实是同上的,只是用ref,依赖配置)

       完成这个练习就配置这里没多大问题了。

 

关于配置当然我们可以去看它的xml约束文档

Spring默认在创建ApplicationContext的时候,就将配置文件中所有对象实例化并进行注入,我们可以采用相关的属性延迟配置文件的初始化。lazy属性,通常我们不修改,都使用默认的立刻加载

 

IOC(控制反转)的概念:

    本来是由应用程序管理的对象之间依赖关系,现在交给了容器管理,这就是控制反转,即交给了IOC容器,SpringIOC容器主要使用DI的方式实现的。不需要主动查找,对象的查找、定位、和创建全部都由容器管理。

简单来说IOC容器就是管理对象的容器,是个更为复杂的抽象工厂。

 

IOC容器带来的优点:

1.大量减少了Factory 和 Singleton 的数量,使代码的层次更加清晰,主要原因是我们不在查找、定位、创建和管理对象的创建以及对象之间的依赖关系。

2.Spring IOC容器是一个轻量级的容器,没有侵入性,不需要依赖容器的API,也不需要实现Spring的任何接口。

3.一个合理的设计尽量避免侵入性(有时候不得已要使用侵入式)

4.会使我们的框架结合工作的更好

5.提供AOP声明式服务能力,可以针对POJO对象提供声明式服务能力,如声明式事务。

6.对于资源,Hibernate SessionJDBC Connection 我们不再负责开启和关闭,把它们交给Spring容器来管理

7.鼓励我们面向接口编程,可配置可修改

8.减少代码的耦合(解耦合),将耦合推迟到了配置文件中,发生变化时也容易修改

 

静态代理和动态代理的模式学好了将会有助于下一部分AOP的学习理解。

 

Spring是有一种约定优于配置的理念

 

本部分最重点在于理解好IOC容器

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值