Spring 入门学习

Spring概念

Spring是一个开源框架,为了解决企业应用开发的复杂性而建的,但现在已经不止应用于企业应用。

是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。

  • 从大小与开销两方面而言Spring都是轻量的
  • 通过控制反转(IoC)的技术达到松耦合的目的
  • 提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务进行内聚性的开发
  • 包含并管理应用对象的配置和生命周期,这个意义上是一种容器
  • 将简单的组件配置、组合成为复杂的应用,这个意义上是框架

在Spring上开发应用简单、方便、快捷,Spring带来了复杂JavaEE开发的春天

Spring作用

file

适用范围

  • 构建企业应用(SpringMVC+Spring+Hibernate/ibatis)
  • 单独适用Bean容器(Bean管理)
  • 单独适用AOP进行切面处理
  • 其他的Spring功能,如:对消息的支持等
  • 在互联网中的应用等

面向接口编程

  • 结构设计中,分清层次及调用关系,每层只向外(上层)提供一组功能接口,各层间仅依赖接口而非实现类
  • 接口实现的变动不影响各层间的调用,这一点在公共服务中尤为重要
  • 面向接口编程中的接口是用于隐藏具体实现和实现多态性的组件

什么是IOC

IOC:控制反转,控制权的转移,应用程序本身不负责依赖对象的创建和维护,而是由外部容器负责创建和维护。
DI(依赖注入)是其一种实现方式
目的:创建对象并且组装对象之间的关系

扩展理解

file

IOC房屋中介对比

file

自从有了IOC之后,不必自己创建对象了,IOC机制提供了。

Bean容器

Bean容器初始化

file

file

javaBean的理解:
JavaBean 是一种JAVA语言写成的可重用组件。为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性,long和class方法获取。众所周知,属性名称符合这种模式,其他Java 类可以通过自省机制发现和操作这些JavaBean 的属性。

javaBean在MVC设计模型中是model,又称模型层,在一般的程序中,我们称它为数据层,就是用来设置数据的属性和一些行为,然后我会提供获取属性和设置属性的get/set方法

MVC的概念,即M-model-模型:JavaBean;V-view-表现:JSP页面;C-control-控制和处理:Servlet。

jsp中使用javabean的好处如下:

  • 1.提高代码的可复用性:对于通用的事务处理逻辑,数据库操作等都可以封装在JavaBean中,通过调用JavaBean的属性和方法可快速进行程序设计。
  • 2.程序易于开发维护:实现逻辑的封装,使事务处理和显示互不干扰。
  • 3.支持分布式运用:多用JavaBean,尽量减少java代码和html的混编。
  • 4.可以便捷地传递数据

参考文章:JavaBean的作用

Spring注入

Spring注入是指在启动Spring容器加载bean配置的时候,完成对变量赋值的行为
常用的两种注入方式:

  • 设置注入
  • 构造注入

file

为者常成,行者常至