--------------------------------------------------------------------------------------------------------------------------------------------------
Spring AOP(面向切面编程)
AOP(Aspect-OrientedProgramming):面向切面编程
它的主要作用就是对代码段进行增强处理。简单地说,就是在不改变原程序的基础上为代码段增加新的功能,如增加日志输出功能、启动数据库事务等。
--------------------------------------------------------------------------------------------------------------------------------------------------
Spring IoC(控制反转)
IoC(Inversion of Control,IoC)是面向对象编程中的一种设计原则,用来降低程序代码之间的耦合度。概念:控制权由对象本身转向容器,由容器根据配置文件去创建实例并创建各个实例之间的依赖关系
核心:bean工厂,在spring中,bean工厂创建的各个实例称作bean
核心:spring封装了抽象工厂模式;bean工厂创建的各个实例称作为bean。
spring让一个对象不用创建new了,可以自动生产,这就是利用Java的反射机制动态创建、调用对象,spring就是在运行时,根xml 是spring配置文件动态创建对象,和调用对象里的方法的。spring就是通过反射来实现注入的。
IoC也称为DI(Dependency Injection,依赖注入)。
--------------------------------------------------------------------------------------------------------------------------------------------------
spring框架的体系结构(spring.io)
spring框架大约20个功能模块组成。这些模块被分成6个部分。Core Container
- Spring-beans Bean工厂与bean的装配
- spring-core 依赖注入IoC与DI的最基本实现
- spring-context spring的context上下文即IoC容器
- spring-expression spring表达式语言
- spring-jdbc jdbc的支持
- spring-tx 事务控制
- spring-orm 对象关系映射,集成orm框架
- spring-oxm 对象xml映射
- spring-jms java消息服务
- spring-web 基础web功能,如文件上传
- spring-webmvc mvc实现
- spring-webmvc-portlet 基于portlet的mvc实现
- spring-struts 与struts的集成,不推荐,spring4不再提供
- spring-aop 面向切面编程
- spring-aspects 集成AspectJ
- spring-instrument 提供一些类级的工具支持和ClassLoader级的实现,用于服务器
- spring-instrument-tomcat 针对tomcat的instrument实现
Test
- spring-test
- spring测试,提供junit与mock测试功能
--------------------------------------------------------------------------------------------------------------------------------------------------
Spring有哪些优点?
-
轻量级:Spring在大小和透明性方面绝对属于轻量级的,基础版本的Spring框架大约只有2MB。
-
控制反转(IOC):Spring使用控制反转技术实现了松耦合。依赖被注入到对象,而不是创建或寻找依赖对象。
-
面向切面编程(AOP): Spring支持面向切面编程,同时把应用的业务逻辑与系统的服务分离开来。
-
容器:Spring包含并管理应用程序对象的配置及生命周期。
-
MVC框架:Spring的web框架是一个设计优良的web MVC框架,很好的取代了一些web框架。
-
事务管理:Spring对下至本地业务上至全局业务(JAT)提供了统一的事务管理接口。
-
异常处理:Spring提供一个方便的API将特定技术的异常(由JDBC, Hibernate, 或JDO抛出)转化为一致的、Unchecked异常。
参考:http://www.importnew.com/11657.html
--------------------------------------------------------------------------------------------------------------------------------------------------
认识spring框架
Spring是一个轻量级的企业级开源框架spring有两个目标:一是让现有技术更易于使用,而是促进良好的编程习惯。
Spring是一个全面的解决方案,它坚持一个原则:不重复发明轮子,即已经有较好解决方案的领域,Spring绝不重复实现,只是对现有方案提供支持,使之更易用。