Spring(一)--简介
一.概述(什么是spring):
Spring是分层的Java SE/EE应用full-stack(一站式)轻量级开源框架。他解决的是业务逻辑层和其他各层的松耦合问题,将面向接口的编程思想贯穿整个系统应用。以IOC(控制反转)和AOP(面向切面编程)为内核,提供了展现层Spring MVC和持久层Spring JDBC以及业务层事务管理等众多的企业级应用技术,还整合了开源世界众多著名第三方框架和类库。
二.优势(特点):
*方便解耦,简化开发。通过Spring提供的IOC容器,可以将对象间的依赖关系交由Spring进行控制,避免硬编码所造成的过度程序耦合;
*AOP编程的支持。方便进行面向切面编程,许多不容易用传统OOP实现的功能可以通过AOP轻松应付;
*声明式事务的支持。可以将我们从单调烦闷的事务管理代码中解脱出来,通过声明式方式灵活的进行事务的管理,提高开发效率和质量。
*方便程序的测试。可以用非容器的依赖的编程方式进行几乎所有的测试工作;
*方便集成各种优秀框架。Spring可以降低各种框架的使用难度,提供了各种优秀框架的直接支持;
*降低JavaEE API(如:JDBA、JavaMail、远程调用等)进行了薄薄的封装层,使这些API的使用难度大大降低;
*Java源码是经典学习范例。设计巧妙、结构清晰、匠心独用,处处体现着大师对Java设计模式灵活应用以及Java技术的高深造诣。是Java技术的最佳实践范例。
三.好处(优点):
*低侵入式设计,代码污染极低;
*独立于各种应用服务器,基于Spring框架的应用,真正实现Write Once,Run Anywhere的承诺;
*Spring的DI机制降低了业务对象替换的复杂性,提高了组件之间解耦;
*Spring的AOP支持允许将一些通用任务(安全、事务、日志等)进行集中式管理,从而提供了更好的复用;
*Spring的ORM和DAO提供了与第三方持久层框架的良好整合,并简化了底层的数据库访问;
*Spring并不强制应用完全依赖于Spring;
*Spring主要目的是使JavaEE易用和促进好编程习惯。
Spring(一)--简介的更多相关文章
- Spring 系列: Spring 框架简介 -7个部分
Spring 系列: Spring 框架简介 Spring AOP 和 IOC 容器入门 在这由三部分组成的介绍 Spring 框架的系列文章的第一期中,将开始学习如何用 Spring 技术构建轻量级 ...
- Spring MVC简介
Spring MVC简介 Spring MVC框架是有一个MVC框架,通过实现Model-View-Controller模式来很好地将数据.业务与展现进行分离.从这样一个角度来说,Spring MVC ...
- Spring 系列: Spring 框架简介(转载)
Spring 系列: Spring 框架简介 http://www.ibm.com/developerworks/cn/java/wa-spring1/ Spring AOP 和 IOC 容器入门 在 ...
- Spring Boot简介
Spring Boot简介 Spring Boot是为了简化Spring开发而生,从Spring 3.x开始,Spring社区的发展方向就是弱化xml配置文件而加大注解的戏份.最近召开的SpringO ...
- Spring Cloud微服务笔记(二)Spring Cloud 简介
Spring Cloud 简介 Spring Cloud的设计理念是Integrate Everything,即充分利用现有的开源组件, 在它们之上设计一套统一的规范/接口使它们能够接入Spring ...
- Spring AOP 简介
Spring AOP 简介 如果说 IoC 是 Spring 的核心,那么面向切面编程就是 Spring 最为重要的功能之一了,在数据库事务中切面编程被广泛使用. AOP 即 Aspect Orien ...
- 第63节:Java中的Spring MVC简介笔记
前言 感谢! 承蒙关照~ Java中的Spring MVC简介笔记 MVC简介 Spring MVC 基本概念 Spring MVC 项目搭建 maven 使用Spring MVC进行开发 实现数据绑 ...
- Spring Boot 简介
作者其他Spring系列文章 Spring Framework简介 Spring框架快速入门 Spring Boot愿景 Spring Boot愿景就是让我们创建可运行的.独立的.基于Spring的 ...
- Spring Boot从入门到精通之:一、Spring Boot简介及快速入门
Spring Boot Spring Boot 简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来 ...
- Spring Boot基础:Spring Boot简介与快速搭建(1)
1. Spring Boot简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的创建.运行.调试.部署等. Spring Boot默认使用tomca ...
随机推荐
- 查看php扩展
php -m
- freshclam
1 3 * ** /usr/local/clamav/bin/freshclam 定时更新.定时杀毒
- CA证书与https讲解
最近面试问到这个问题,之前了解过但答的不是很好,再补充补充一下https方面的知识. 备注:以下非原创文章. CA证书与https讲解 1.什么是CA证书. ◇ 普通的介绍信 想必大伙儿都听说过介绍信 ...
- Tarjan 算法总结
一些概念 连通:无向图中的任意两点都可以互相到达. 强连通:有向图中的任意两点都可以互相到达. 连通分量:无向图的极大连通子图. 强连通分量:有向图的极大强连通子图. DFS 生成树:对一张图(有向无 ...
- zk特性
看了又忘系列: 1.zk会将全量的数据存储在内存中,以此来实现提高服务器吞吐,减少延迟的目的. 2.集群中每台机器都会在内存中维护当前的服务器状态,并且每台机器之间都相互保持着通信.只要集群中存在超过 ...
- LaTeX中的参考文献BibTex
设置: BibTex代码及注释: 显示效果:
- KNN 算法-理论篇-如何给电影进行分类
公号:码农充电站pro 主页:https://codeshellme.github.io KNN 算法的全称是K-Nearest Neighbor,中文为K 近邻算法,它是基于距离的一种算法,简单有效 ...
- Java String 演进全解析
前言 String 是我们使用最频繁的对象,使用不当会对内存.程序的性能造成影响,本篇文章全面介绍一下 Java 的 String 是如何演进的,以及使用 String 的注意事项. 下面的输出结果是 ...
- 为什么要小心使用 Task.Run
昨天在博客园有园友问了我一个问题,是这样的: 先是半个月前 @碧水青荷 童鞋的一句话"大家都说不要随便 Task.Run(()=>{}) 这样写",当时没有想太多,这句话并没 ...
- Springboot核心注解
运行文中的代码需要在项目构建中引入springboot 相关依赖. ① @configuration configuration,用来将bean加入到ioc容器.代替传统xml中的bean配置.代码示 ...