spring是什么?它能够做什么?新手必看

Java开发教程视频

关注我们,领取500G开发教程视频 点击领取

Spring简介:

简介:功能强大的基于javaBeans的配置管理,它使组织应用变得容易和迅速。你的代码中不再充斥着单例垃圾,也不再有麻烦的属性文件。取而代之的一致和幽雅的方法的应用。

JDBC抽象层,提供有确切含义的异常层次结构(不再从SQLException继承一堆代码),简化了出错处理,大幅度减少你需要编写的代码,实际上,你根本不必再编写模块来调用 JDBC。

类似的事务管理抽象层,使你能够轻松定义事务而不再处理底层的JTA问题。

建立在核心Spring功能上的灵活的MVC web应用框架, 这个框架高度可配置,能够适应多种多视技术。

在Spring配置管理中 集成了所有AOP 功能。你可以通过事务管理声明让Spring管理的任意对象AOP 化。使用Spring, 你不通过EJB,在Tomcat 或其他不支持JTA的容器使用单个数据库时甚至不需要JTA,也能应用可声明事务管理。

集成了Hibernate, JDO 和其它重要的 APIs.

你可在任何J2EE server内或外面使用所有Spring功能。

Spring本身也是层式框架。它的所有功能建立在低层上。因此你可以只使用JavaBeans配置管理,而不使用MVC 框架或 AOP 支持,不过如果你应用MVC 框架或 AOP支持,你会发现它们建立在配置框架上,并且你可立即应用你相关的知识。

就像他的作者说的:

Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。

Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的。

Spring提供了唯一的数据访问抽象,包括简单和有效率的JDBC框架,极大的改进了效率并且减少了可能的错误。Spring的数据访问架构还集成了Hibernate和其他O/R mapping解决方案。

Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC纸上提供一个一致的编程模型。

Spring提供了一个用标准Java语言编写的AOP框架,它给POJOs提供了声明式的事务管理和其他企业事务--如果你需要--还能实现你自己的aspects。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。

Spring还提供了可以和总体的IoC容器集成的强大而灵活的MVC web框架。

Spring组成

Spring Core (spring核心)即IOC或DI 注IOC是Inversion of control (控制反转),DI dependency injection(依赖注入)

AOP aspect orentied programming (面向方面编程或面向切面编程)

Web Mvc 不用多说了

ORM ORM,即Object-Relationl Mapping,它的作用是在关系型数据库和对象之间作一个映射

DAO data access object数据访问对象(不知这里是不是这个意思)

各组成与简介的关系

SpringCore(IOC) Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类编程的良好习惯。Spring的架构基础是基于使用JavaBean属性的Inversion of Control容器。然而,这仅仅是完整图景中的一部分:Spring在使用IoC容器作为构建完关注所有架构层的完整解决方案方面是独一无二的。

功能强大的基于javaBeans的配置管理,它使组织应用变得容易和迅速。你的代码中不再充斥着单例垃圾,也不再有麻烦的属性文件。取而代之的一致和幽雅的方法的应用。

AOP 在Spring配置管理中 集成了所有AOP 功能。你可以通过事务管理声明让Spring管理的任意对象AOP 化。使用Spring, 你不通过EJB,在Tomcat 或其他不支持JTA的容器使用单个数据库时甚至不需要JTA,也能应用可声明事务管理。

Spring提供了一个用标准Java语言编写的AOP框架,它给POJOs提供了声明式的事务管理和其他企业事务--如果你需要--还能实现你自己的aspects。这个框架足够强大,使得应用程序能够抛开EJB的复杂性,同时享受着和传统EJB相关的关键服务。

Web MVC建立在核心Spring功能上的灵活的MVC web应用框架, 这个框架高度可配置,能够适应多种多视技术。

ORM Spring的数据访问架构还集成了Hibernate和JDO 和其它重要的 APIs.其他O/R mapping解决方案。

DAO JDBC抽象层,提供有确切含义的异常层次结构(不再从SQLException继承一堆代码),简化了出错处理,大幅度减少你需要编写的代码,实际上,你根本不必再编写模块来调用 JDBC。

类似的事务管理抽象层,使你能够轻松定义事务而不再处理底层的JTA问题。

往期精彩回顾

程序员如果没有自学能力,不如尽快转行

Java程序员编程学习之路资源合集

20套Java项目200套Android项目200套小程序

Java自学?Java自学编程大放送

原文发布于微信公众号 - Java社区(Java5206868)

原文发表时间:2018-05-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏魂祭心

原 canvas绘制clock

4064
来自专栏张善友的专栏

LINQ via C# 系列文章

LINQ via C# Recently I am giving a series of talk on LINQ. the name “LINQ via C...

2645
来自专栏落花落雨不落叶

canvas画简单电路图

61011
来自专栏Golang语言社区

【Golang语言社区】GO1.9 map并发安全测试

var m sync.Map //全局 func maintest() { // 第一个 YongHuomap := make(map[st...

4708
来自专栏我和未来有约会

Kit 3D 更新

Kit3D is a 3D graphics engine written for Microsoft Silverlight. Kit3D was inita...

2526
来自专栏转载gongluck的CSDN博客

cocos2dx 打灰机

#include "GamePlane.h" #include "PlaneSprite.h" #include "BulletNode.h" #include...

5426
来自专栏C#

DotNet加密方式解析--非对称加密

    新年新气象,也希望新年可以挣大钱。不管今年年底会不会跟去年一样,满怀抱负却又壮志未酬。(不过没事,我已为各位卜上一卦,卦象显示各位都能挣钱...)...

4858
来自专栏Ceph对象存储方案

Luminous版本PG 分布调优

Luminous版本开始新增的balancer模块在PG分布优化方面效果非常明显,操作也非常简便,强烈推荐各位在集群上线之前进行这一操作,能够极大的提升整个集群...

3105
来自专栏一个爱瞎折腾的程序猿

sqlserver使用存储过程跟踪SQL

USE [master] GO /****** Object: StoredProcedure [dbo].[sp_perfworkload_trace_s...

2050
来自专栏张善友的专栏

Silverlight + Model-View-ViewModel (MVVM)

     早在2005年,John Gossman写了一篇关于Model-View-ViewModel模式的博文,这种模式被他所在的微软的项目组用来创建Expr...

2958

扫码关注云+社区