spring基本知识
什么是spring:
spring就是以IOC反转控制和AOP面向切面编程为内核,使用基本的JavaBean来完成以前由EJB完成的工作。
spring框架的优点:
(1)方便耦合,简化开发:spring就是一个大工厂,可以将所有创建的对象和依赖关系交给spring管理。
(2)AOP编程支持:spring提供面向切面的编程,可以方便的实现对程序进行权限拦截和运行监控等功能。
(3)声明式事务的支持:只需要配置就可以完成对事务的管理,无须手动编程。
(4)方便程序测试:spring对JUnit4支持,可以通过注解方便的测试spring程序。
(5)方便集成各种优秀框架:spring不排斥各种优秀的开源框架,其内部提供了对各种优秀框架的支持。
(6)降低JavaEE API的使用难度:spring为JavaEE中的一些API提供了封装,降低了这些API的使用难度。
spring的体系结构
(1)Core Container(核心容器):是其他去模块建立的基础,由Bean模块、Core核心模块、Context上下文模块、Expression Language表达式语言模块组成。
① Bean模块:提供了BeanFactory,spring将管理对象称为Bean。
② Core核心模块:提供spring框架的基本组成部分,包括IoC和DI功能。
③ Context上下文模块:建立在核心模块和Bean模块之上,是访问定义和 配置任何对象的媒介。ApplicationContext接口是上下文模块的焦点。
④ Expression Language模块:是运行时查询和操作对象图的强大的表达式 语言。
(2)Date Access/Integration(数据访问/集成):包括JDBC、ORM、OXM、JMS和Transaction模块。
① JDBC模块:提供了一个JDBC抽象层,减少了开发过程中对数据库操作 的代码。
② ORM模块:对流行的对象关系映射API包括JPA、Hibernate等提供的集 成层。
③ Transaction事务模块:支持编程和声明式事务管理实现特殊接口类,并 对所有的POJO都适用。
(3)Web模块:包括web、servlet、struts和portlet组件。
① Web模块:提供了基本的web开发集成特性,例如:多文件上传功能、 使用的servlet 监听器的IoC容器初始化以及web应用上下文。
② Servlet模块:包括spring模型—视图—控制器(MVC)实现web应用 程序。
③ Struts模块:包括支持类内的spring应用程序,集成了经典的struts web 层。
(4)其他层:包括AOP、Aspects、Instrumentation以及Test模块。
① AOP模块:提供面向切面的编程,允许定义方法拦截器和切入点,将代 码按照功能分离,降低耦合性。
② Test测试模块:支持_spring_组件,使用_JUnit_测试。
spring基本知识的更多相关文章
- Spring基础知识
Spring基础知识 利用spring完成松耦合 接口 public interface IOutputGenerator { public void generateOutput(); } 实现类 ...
- Spring零碎知识复习
自学了Spring也有一段时间了,多多少少掌握了一些Spring的知识,现在手上也没有很多的项目练手,就将就着把这些学到的东西先收集起来,方便日后用到的时候没地方找. 1.spring的国际化 主要是 ...
- Spring Ioc知识整理
Ioc知识整理(一): IoC (Inversion of Control) 控制反转. 1.bean的别名 我们每个bean元素都有一个id属性,用于唯一标识实例化的一个类,其实name属性也可用来 ...
- 通俗化理解Spring3 IoC的原理和主要组件(spring系列知识二总结)
♣什么是IoC? ♣通俗化理解IoC原理 ♣IoC好处 ♣工厂模式 ♣IoC的主要组件 ♣IoC的应用实例 ♣附:实例代码 1.什么是IoC(控制反转)? Spring3框架的核心是实现控制反转(Io ...
- Spring Boot 知识图谱
最近有意重新学习下SpringBoot知识,特地总结了SpringBoot的知识点,对于想要学习的人来说,够用. SpringBoot学习路径 第一部分:了解 Spring Boot Spring B ...
- 浅谈Spring MVC知识
关于MVC框架,我相信大家都不陌生,都会说也就是模型-视图-控制器这三层的框架结构,如果你参加面试的时候考官会问:“MVC框架是什么?你说一说.”其实我们都知道这个问题还需要问的,只要你是一个开发人员 ...
- 程序员必看:给你一份详细的Spring Boot知识清单
在过去两三年的Spring生态圈,最让人兴奋的莫过于Spring Boot框架.或许从命名上就能看出这个框架的设计初衷:快速的启动Spring应用.因而Spring Boot应用本质上就是一个基于Sp ...
- spring远程服务知识梳理
序:本文主要是总结和归纳spring的远程服务相关知识,可作为入门学习笔记.写博客目的也是为了进行知识梳理,便于以后查看.本文主要参考资料 spring 实战第三版 本文主要讨论内容如下: 远程调度概 ...
- spring 基础知识复习
spring是一个分层架构,由 7 个定义良好的模块组成.Spring 模块构建在核心容器之上,核心容器定义了创建.配置和管理 bean 的方式. 组成spring框架的每个模块(或组件)都可单独存在 ...
- Spring IOC知识java反射
[1] Java反射知识-->Spring IoC :http://www.iteye.com/topic/1123081 [2] Java动态代理-->Spring AOP :http: ...
随机推荐
- This relative module was not found:
晚上项目敲完,关机睡觉! 早上醒来-----打开项目,惊呆了 !This relative module was not found: 如图 这个报错,我当时怎么也没看懂!!! 后来经过测试 ...
- C# 当中 foreach 的原理
在 C# 当中的 foreach 语句实际上就是遍历迭代器的语法糖.例如我们拥有以下代码: public class TestClass { public void TestMethod() { va ...
- python预编译函数compile,exec,eval
funcname = "func" func = "def %s():\n" % funcname funccontent = 'print "hel ...
- TypeError: unorderable types: str() >= int()
1.问题描述 age=input('please enter your age') if age >=18: print('your age is',age) print('adult') el ...
- 从锅炉工到AI专家(10)
RNN循环神经网络(Recurrent Neural Network) 如同word2vec中提到的,很多数据的原型,前后之间是存在关联性的.关联性的打破必然造成关键指征的丢失,从而在后续的训练和预测 ...
- 带着新人学springboot的应用10(springboot+定时任务+发邮件)
接上一节,环境一样,这次来说另外两个任务,一个是定时任务,一个是发邮件. 1.定时任务 定时任务可以设置精确到秒的准确时间去自动执行方法. 我要一个程序每一秒钟说一句:java小新人最帅 于是,我就写 ...
- PyQt:左侧选项卡
写在前面 正在用pyqt写我们比赛项目的客户端,针对左侧选项卡,写了一个简单的demo.记录一下. 环境 Python3.5.2 PyQt5 陈述 用的结构是左边一个QListWidget + 右边Q ...
- 批量修改mac系统文件的可读写权限
www 修改 /Users/feiwang 文件夹下的www 下的所有文件和文件的可读写权限.
- TiDB
由于目前的项目把mysql换成了TiDb,所以特意来了解下tidb.其实也不能说换,由于tidb和mysql几乎完全兼容,所以我们的程序没有任何改动就完成了数据库从mysql到TiDb的转换,TiDB ...
- Ext中setVersion和getVersion
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...