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: ...
随机推荐
- webpack的基本配置项
const path = require("path"); const HtmlWebpackPlugin = require("html-webpack-plugin& ...
- 【视频】使用ASP.NET Core开发GraphQL服务
GraphQL 既是一种用于 API 的查询语言也是一个满足你数据查询的运行时. GraphQL来自Facebook,它于2012年开始开发,2015年开源. GraphQL与编程语言无关,可以使用很 ...
- 8.Flask-Script
Flask-script的作用是可以通过命令行的形式操作flask.安装方式:pip install flask-script 1.1.command装饰器 (1)创建manage.py from f ...
- python +selenium识别不来click事件,出现报错
assert "login" in browser.title browser.implicitly_wait(10) elem = browser.find_element_by ...
- java代码之美(10)---Java8 Map中的computeIfAbsent方法
Map中的computeIfAbsent方法 Map接口的实现类如HashMap,ConcurrentHashMap,HashTable等继承了此方法,通过此方法可以在特定需求下,让你的代码更加简洁. ...
- C++版 - Lintcode 77-Longest Common Subsequence最长公共子序列(LCS) - 题解
版权声明:本文为博主Bravo Yeung(知乎UserName同名)的原创文章,欲转载请先私信获博主允许,转载时请附上网址 http://blog.csdn.net/lzuacm. C++版 - L ...
- Lucene 08 - 什么是Lucene的相关度排序 + Java API调整相关度
目录 1 什么是相关度 2 相关度评分 3 相关度设置 3.1 更改相关度的需求 3.2 实现需求-设置广告 1 什么是相关度 概念: 相关度指两个事物之间的关联关系(相关性). Lucene中指的是 ...
- Linq用法小记
一.什么是Linq? LINQ即Language Integrated Query(语言集成查询),LINQ是集成到C#和Visual Basic.NET这些语言中用于提供查询数据能力的一个新特性. ...
- 一文看懂https如何保证数据传输的安全性的
通过漫画的形式由浅入深带你读懂htts是如何保证一台主机把数据安全发给另一台主机的 对称加密 一禅:在每次发送真实数据之前,服务器先生成一把密钥,然后先把密钥传输给客户端.之后服务器给客户端发送真实数 ...
- Docker系列04—Docker的网络模式详解
本文收录在容器技术学习系列文章总目录 1.Docker的四种网络模式 (1)docker四种网络模式如下: Bridge contauner 桥接式网络模式 Host(open) containe ...