Spring学习一:Spring是什么

Spring自诞生以来一直备受青睐,它包括许多框架,例如Spring framework、SpringMVC、SpringBoot、SpringCloud、Spring Data、Spring Security等,所以有人将它们亲切的称之为:Spring全家桶。

Spring framework就是我们平时说的Spring框架,本套教程我们将Spring frame简称为Spring框架。Spring框架就是全家桶内其它框架的基础和核心,下面我们来认识Spring框架吧。

Spring是目前主流的Java web框架,是Java世界最为成功的框架。该框架是一个轻量级的开源框架,具有很高的凝聚力和吸引力。

Spring是Rod Johnson创立,2004年发布了Spring框架的第一版,其目的是用于简化企业级应用程序开发的难道和周期。

Spring是分层Java SE/EE一站式轻量级开源框架,以IoC(Inverse of Control,控制反转)和AOP(Aspect Oriented Programmer,面向切面编程)为内核。

IoC指的是将对象的创建权交给Spring去创建,使用Spring之前,对象的创建都是有我们使用new创建,而使用Spring之后,对象的创建都交给了Spring框架。AOP用来封装多个类的公共行为,将那些与业务无关,却为业务模块所调用的逻辑封装起来,减少系统的重复代码,降低模块间的耦合度。另外,AOP还解决了一些系统层面上的问题,比如日志,事务、权限等。

在Spring中,认为一切Java类都是资源,而资源都是类的实例对象(Bean),容纳并管理这些Bean的是SpringIoC容器,所以Spring是一种基于Bean的编程,它深刻地改变着Java的开发世界,使用基本的JavaBean来完成以前只有EJB才能完成的工作,使得很多复杂的代码变得优雅和简介,避免了EJB臃肿、低效的开发模式,极大的方便项目的后期维护、升级和拓展。迅速地取代了EJB成为了实际的开发标准。

在实际开发中,服务器通常采用三层体系架构,分别为表现层(Web)、业务逻辑层(service)、持久层(dao)。

Spring致力于Java EE应用各层的解决方案,对每一层都提供了技术支持。在表现层提供了与SpringMVC、Struts2框架的整合,在业务逻辑层可以管理事务和记录日志等,在持久层可以整合MyBatis、Hibernate和JdbcTemplate技术。这就充分体现出Spring是一个全面的解决方案,对于已经有较好解决方案的领域,Spring决不做重复的事情。

从某个程度看,Spring框架充当了粘合剂和润滑剂的角色,能够将相应的Java Web系统柔顺地整合起来,并让他们更容易使用。同时其本身还提供了声明式事务等企业级开发不可或缺地功能。

从设计上看,Spring框架给予了Java程序员更高的*度,对业界的常用问题也提供了良好的解决方案,因此,在开源社区受到了广泛的欢迎,并且被大部分公司作为Java项目开发的首选框架。

Spring作为实现Java EE的一个全方位应用程序框架,为开发企业级应用提供了一个健壮、搞笑的解决方案。它不仅可以应用与服务端开发,也可应用与任何Java应用的开发。

Spring框架具有以下几个优点。

1)方便解耦,简化开发

Spring就是一个大工厂,可以将所有对象的创建和依赖关系的维护交给Spring管理。

2)方便集成各种优秀框架

Spring不排斥各种优秀的开源框架,其内部提供了对各种优秀的框架(如 Struts2、Hibernate、Mybatis等)的直接支持

3) 降低Java EE API的使用难度

Spring对Java EE开发中非常难用的一些API(JDBC、JavaMail、远程调用等)都提供了封装,使这些API应用的难道大大降低。

4) 方便程序的测试

Spring支持Junit4,可以通过注解方便地测试Spring程序。

5)AOP编程的支持

Spring提供面向切面编程,可以方便地实现对程序进行权限拦截和运行监控等功能。

6) 声明式事务的支持

只需要通过配置就可以完成对事务的管理,而无须手动编程。

上一篇:丰富Bean的配置


下一篇:1092:求出e的值