Spring 4.0 配置详解
Spring 4.0 简介
Spring 4.0 是 Spring 框架的第四个主要版本,自 2013 年发布以来,Spring 4.0 引入了许多新特性和改进,旨在提高性能、简化开发过程并增强框架的灵活性,本文将详细介绍 Spring 4.0 的配置方式。
Spring 4.0 配置方式
XML 配置
XML 配置是 Spring 框架最传统的配置方式,通过在 XML 文件中定义 Bean 的创建、依赖注入等信息,以下是一个简单的 XML 配置示例:
注解配置
Spring 4.0 引入了注解配置,使得 Bean 的创建和依赖注入更加简洁,以下是一个使用注解配置的示例:
@Configuration@ComponentScan("com.example")public class AppConfig {@Beanpublic User user() {User user = new User();user.setName("张三");user.setAge(30);return user;}}
Java 配置
Java 配置是 Spring 4.0 的一种新特性,允许开发者使用 Java 代码来替代 XML 或注解配置,以下是一个使用 Java 配置的示例:
@Configurationpublic class AppConfig {@Beanpublic User user() {User user = new User();user.setName("张三");user.setAge(30);return user;}}
Spring 4.0 配置优化
Q1:Spring 4.0 与 Spring 3.2 有什么区别?
A1:Spring 4.0 相比 Spring 3.2,引入了许多新特性和改进,如支持 Java 8 新特性、优化了性能、增强了 Web 应用程序的开发等。
Q2:如何选择 Spring 4.0 的配置方式?
A2:根据项目需求和开发者的熟悉程度,可以选择 XML、注解或 Java 配置,XML 配置适合复杂配置,注解配置适合简单配置,Java 配置适合追求极致简洁的开发者。
Spring是什么
Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。 框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。 组成 Spring 框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现。 每个模块的功能如下:核心容器:核心容器提供 Spring 框架的基本功能。 核心容器的主要组件是 BeanFactory,它是工厂模式的实现。 BeanFactory 使用控制反转 (IOC) 模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。 Spring 上下文:Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。 Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际化、校验和调度功能。 Spring AOP:通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了 Spring 框架中。 所以,可以很容易地使 Spring 框架管理的任何对象支持 AOP。 Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。 通过使用 Spring AOP,不用依赖 EJB 组件,就可以将声明性事务管理集成到应用程序中。 Spring DAO:JDBC DAO 抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。 异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。 Spring DAO 的面向 JDBC 的异常遵从通用的 DAO 异常层次结构。 Spring ORM:Spring 框架插入了若干个 ORM 框架,从而提供了 ORM 的对象关系工具,其中包括 JDO、Hibernate 和 iBatis SQL Map。 所有这些都遵从 Spring 的通用事务和 DAO 异常层次结构。 Spring Web 模块:Web 上下文模块建立在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文。 所以,Spring 框架支持与 Jakarta Struts 的集成。 Web 模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。 Spring MVC 框架:MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。 通过策略接口,MVC 框架变成为高度可配置的,MVC 容纳了大量视图技术,其中包括 JSP、Velocity、Tiles、iText 和 POI。 Spring 框架的功能可以用在任何 J2EE 服务器中,大多数功能也适用于不受管理的环境。 Spring 的核心要点是:支持不绑定到特定 J2EE 服务的可重用业务和数据访问对象。 毫无疑问,这样的对象可以在不同 J2EE 环境 (Web 或 EJB)、独立应用程序、测试环境之间重用。
Spring什么叫依赖注入?
IoC 或者 DI 或者 ...一大堆的缩写词不管是面向对象,还是面向过程,都需要分成许多的块,然后由这些部件协同工作完成任务要协同工作就会产生依赖,一个方法调用另一个方法,一个对象包含另一个对象如果对象A包含对象B的话,就需要在A里new一个B依赖注入从具体类B里抽象出接口IB——IB的具体实现可能有很多B,B1,B2...很多种——这样A可以不用再new具体的B了,而是跟IoC容器说:我要一个IB(getBean(IB))。 然后,由容器根据配置文件来做具体的new的工作。 具体new的是哪个,由配置文件从代码外部决定,要更换成B,B1,或是B2...修改配置文件就能做到,不用再改代码了
spring boot和spring的区别
区别就是:Spring 提供的现成特性,比如依赖注入、事务管理、消息支持、集成支持、面向方面编程支持等等。 但是配置比较繁琐。 springboot的出现减少了大量配置和变更管理的框架开销。 只需在 application* 文件或 application* 中编写配置设置一次,并在各种环境中采用相同的构建版本,比如开发、测试和生产环境。














发表评论