Spring boot是Spring框架的一个模块,用于创建独立的,生产级的Spring基础应用程序,并且程序员的工作量最小。它是在核心弹簧框架之上开发的。spring boot背后的主要概念是避免大量的样板代码和配置来改进开发,单元测试等。在创建新的spring应用程序的情况下,我们编写了许多XML配置,服务器设置,添加依赖项等。这些配置文件是样板代码的一个例子。Spring boot避免了所有这些样板代码。
Spring Framework是最流行的Java EE框架之一。它是由Rod Johnson于2003年6月创建的开源轻量级框架。
Spring Framework的核心原则:
1.依赖注入(DI)。
2.面向方面编程(AOP)。
Spring Framework的优点:
1.重量轻:由于其POJO模型的实现,Spring框架是轻量级框架。
2.非侵入性方法:我们知道struts强制程序员扩展Action类,但Spring框架并不强制程序员扩展类或Spring API给出的接口。
3.松散耦合:由于依赖注入概念,弹簧对象松散耦合。
4.模块化时尚:Spring框架采用模块化设计。程序员只能使用所需的模块而忽略其余的模块。
5.易于测试:依赖注入和POJO模型使得应用程序易于测试。
6.交易管理界面:Spring框架为事务管理提供事务管理接口。
7.不需要应用程序服务器:Struts或EJB应用程序需要运行应用程序服务器,但Spring应用程序不需要应用程序服务器。
8. MVC框架:Spring框架是像Struts这样的Web MVC框架的一个很好的替代品。
Spring框架以模块化方式设计,程序员可以从中选择适用的模块而忽略其余模块。Spring框架模块分为以下类别。
Spring框架架构图:
1.测试:
Spring测试模块为使用JUnit或TestNG框架测试弹簧组件提供支持。
2.核心容器:
弹簧芯容器包含以下内容:CORE:核心模块提供了弹簧框架的基本功能,如IoC和DI。Bean: Bean模块提供BeanFactory。Context:上下文模块提供了一种访问任何对象的方法。ApplicationContext接口是Context模块的主要部分。Expression language:表达式语言模块提供了一种在运行时操作对象的方法。
3.数据访问/集成包含以下内容:
JDBC: JDBC模块提供JDBC抽象层。ORM: ORM为对象关系映射API提供集成层,如JPA和Hibernate等OXM: OXM模块为对象/ XML映射API提供抽象层,如JAXB,Castor和XMLBeans等JMS: JMS模块提供消息处理功能。Transaction:事物模块为POJO等类提供交易管理功能。
网站:
Web模块由Web,Web-Servlet,Web-Struts,Web-Socket和Web-Portlet组成,它们提供了创建Web应用程序的功能。
5. AOP:
AOP模块提供面向方面的编程实现,它提供了定义方法拦截器的工具。
6.仪器仪表:
Instrumentation模块提供类检测支持和类加载器实现
Spring IoC容器负责在整个生命周期中创建,连接,配置和管理对象。它使用配置元数据来创建,配置和管理对象。配置元数据可以由spring配置xml文件或注释表示。
Spring IoC容器的类型:
1. BeanFactory
2. ApplicationContext
Bean工厂:
BeanFactory org.springframework.beans.factory.BeanFactory是接口,XmlBeanFactory是它的实现类。它是一个简单的容器,为依赖注入提供基本支持。
使用BeanFactory的语法:
Resource resource = new ClassPathResource(“spring configuration file”);
BeanFactory beanFactory = new
ApplicationContext的:
ApplicationContext org.springframework.context.ApplicationContext是接口,ClassPathXmlApplicationContext是它的实现类。ApplicationContext容器包含BeanFactory容器的所有功能,以及一些额外的功能,如国际化,事件监听器等。
使用ApplicationContext的语法:
ApplicationContext applicationContext = new
注意:由于ApplicationContext提供了额外的功能,包括BeanFactory给出的所有功能,因此最好使用ApplicationContext容器。