Spring入门
Spring介绍
Spring是一个非常活跃的开源框架, 它是一个基于IOC和 AOP来构架多层JavaEE系统的框架,它的主要目地是简化 企业开发
Spring以一种非侵入式的方式来管理你的代码, Spring提 倡”最少侵入”,这也就意味着你可以适当的时候安装 或卸载Spring
Spring模块
为什么使用Spring
降低组件之间的耦合度,实现软件各层之间的解耦。
- IOC(依赖注入):包含并管理应用对象的配置和生命周期,你可以配置你的每个 bean如何被创建,也可以配置每个bean是只有一个实例,还是每次需要时都生成 一个新的实例,以及它们是如何相互关联的
- AOP(面向切面):采用了面向切面编程来实现很多基础但是与业务逻辑无关的功能 的解耦,比如:事务管理、日志、权限验证.....
- DAO:Spring 还提供了对数据库JDBC的封装,使用JdbcTemplate来简化数据操 作
- ORM:提供了对主流的对象关系映射框架的支持
- JEE: 对Java企业级开发提供了一些解决方案,例如EJB、JMS等
- WEB: 提供了自己的Spring MVC和对显示层框架的集合支持
专业术语了解
- 组件/框架设计
侵入式设计
引入了框架,对现有的类的结构有影响;即需要实现或继承某些特定类。
例如: Struts框架
非侵入式设计
引入了框架,对现有的类结构没有影响。
例如:Hibernate框架 / Spring框架
- 控制反转
Inversion on Control , 控制反转 IOC
对象的创建交给外部容器完成,这个就做控制反转.
依赖注入, dependency injection
处理对象的依赖关系
区别:
控制反转, 解决对象创建的问题 【对象创建交给别人】
依赖注入, 在创建完对象后, 对象的关系的处理就是依赖注入 【通过set方法依赖注入】
- AOP
面向切面编程。切面,简单来说来可以理解为一个类,由很多重复代码形成的类。
切面举例:事务、日志、权限;