Spring Framework 是一个开源的Java/Java EE全功能栈(full-stack)的应用程序框架,以Apache许可证形式发布,也有.NET平台上的移植版本。该框架基于 Expert One-on-One Java EE Design and Development(ISBN 0-7645-4385-7)一书中的代码,最初由 Rod Johnson 和 Juergen Hoeller等开发。Spring Framework 提供了一个简易的开发方式,这种开发方式,将避免那些可能致使底层代码变得繁杂混乱的大量的属性文件和帮助类。

关键特性

  • 强大的基于 JavaBeans 的采用控制翻转(Inversion of Control,IoC)原则的配置管理,使得应用程序的组建更加快捷简易。
  • 一个可用于从 Applet 到 Java EE 等不同运行环境的核心 Bean 工厂。
  • 数据库事务的一般化抽象层,允许宣告式(Declarative)事务管理器,简化事务的划分使之与底层无关。
  • 内建的针对 JTA 和 单个 JDBC 数据源的一般化策略,使 Spring 的事务支持不要求 Java EE 环境,这与一般的 JTA 或者 EJB CMT 相反。
  • JDBC 抽象层提供了有针对性的异常等级(不再从SQL异常中提取原始代码),简化了错误处理,大大减少了程序员的编码量。再次利用JDBC时,你无需再写出另一个 ‘终止’ (finally) 模块. 并且面向JDBC的异常与Spring 通用数据访问对象 (Data Access Object) 异常等级相一致.
  • 以资源容器,DAO 实现和事务策略等形式与 Hibernate,JDO 和 iBATIS SQL Maps 集成。利用众多的翻转控制方便特性来全面支持, 解决了许多典型的Hibernate集成问题. 所有这些全部遵从Spring通用事务处理和通用数据访问对象异常等级规范.
  • 灵活的基于核心 Spring 功能的 MVC 网页应用程序框架。开发者通过策略接口将拥有对该框架的高度控制,因而该框架将适应于多种呈现(View)技术,例如JSP、FreeMarker、Velocity、Tiles、iText 以及 POI。值得注意的是,Spring 中间层可以轻易地结合于任何基于 MVC 框架的网页层,例如 Struts、WebWork或 Tapestry。
  • 提供诸如事务管理等服务的面向方面编程框架。
  • 在设计应用程序Model时,MVC 模式(例如Struts)通常难于给出一个简洁明了的框架结构。Spring却具有能够让这部分工作变得简单的能力。程序开发员们可以使用Spring的 JDBC 抽象层重新设计那些复杂的框架结构。

开发资源

最新文章

  1. jquery-leonaScroll-1.3-自定义竖向自适应滚动条插件
  2. ubuntu中chromium无法播放flash,安装flash
  3. Egit Patch
  4. spring 和 spring mvc
  5. PHP输出缓冲(Output Buffering)
  6. android_Activity之Button_OnClickListener
  7. Android中几种定位 方式
  8. Rhel6-heartbeat配置文档
  9. request.getParameter与request.getAttribute()
  10. Android Binder------ServiceManager启动分析
  11. Data 语义学(2)
  12. 实现textarea限制输入字数
  13. 模板模式(Template)
  14. Apache POI组件操作Excel,制作报表(二)
  15. CSU 1811 Tree Intersection
  16. .Net程序员学用Oracle系列(12):增删改查
  17. 在.NET Core中使用Irony实现自己的查询语言语法解析器
  18. 【常见错误】--Nltk使用错误
  19. iOS----------常见经典错误
  20. iTOP-4412开发板-串口转接小板的使用文档

热门文章

  1. 最简单的Linux下apache+mysql+php安装
  2. 一次性无重复配置VS项目插件属性的方法
  3. .net 下SSE使用
  4. HDU4646_Laser Beam
  5. Class类是什么? Class.forName()是干什么的?
  6. 转:linux命令: tail ,head 显示文件某行内容 与sed在线编辑器
  7. NOIP2003 传染病控制 【搜索 + 卡时】
  8. 20165218 2017-2018-2 《Java程序设计》课程总结
  9. mac Source Tree免登陆方法
  10. Yura