Java 杂谈技能图谱

SpringBoot系列-前置知识

2019-02-19  本文已影响0人  西召

title: SpringBoot系列-前置知识

date: 2019-02-19 13:08:25

categories:

tags: [Java,Spring,SpringBoot,Spring5,Maven]


Spring 框架

Spring框架是一个轻量的企业级的开发一站式解决方案,Spring框架已经是轻量级Java EE实际上的的行业标准。

Spring 模块

Spring是模块化的,开发者可以选择自己需要的模块进行集成。

Spring核心的模块包含:Core Container(核心容器)、Data Access(数据访问)、AOP(面像切面)、Web(Web集成功能)、Test(测试),等等。

除了Spring Core Container(Spring核心容器)是必须的,其他的组成 Spring 框架的每个模块都可以单独存在,或者与其他一个或多个模块联合实现。

Spring 核心容器提供了 Spring 框架的基本功能,管理着Spring应用中bean的创建、配置和管理。

Spring 核心容器的主要组件是 BeanFactory,它是工厂模式的实现。BeanFactory 使用DI将应用程序的配置和依赖性规范与实际的应用程序代码分开。

Spring框架模块

下面是Spring核心模块的概要:

Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。

Spring 上下文提供了一种框架式的对象访问方法,有些象JNDI注册器。

Context封装包的特性得自于Beans封装包,并添加了对国际化(I18N)的支持(例如资源绑定),事件传播,资源装载的方式和Context的透明创建,比如说通过Servlet容器。

Spring 上下文和Bean工厂都是 bean 容器 的实现。

通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的任何对象支持 AOP。

Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。

JDBC DAO 抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。

Spring DAO 的面向 JDBC 的异常遵从通用的 DAO 异常层次结构。

Spring 框架插入了若干个 ORM 框架,从而提供了 ORM 的对象关系工具,其中包括 JDO、Hibernate 和 iBatis SQL Map。所有这些都遵从 Spring 的通用事务和 DAO 异常层次结构。

Web 上下文模块建立在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文。

MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。通过策略接口,MVC 框架变成为高度可配置的,MVC 容纳了大量视图技术,其中包括 JSP、Velocity、Tiles、iText 和 POI。

Spring 优点

Spring框架有如下优点:

Spring 5

Spring在2017 年9月发布Spring 5的通用版本 (GA),这是自 2013 年12月以来第一个主要 Spring Framework 版本。

Spring 5 提供了一些人们期待已久的改进,兼容 Java 8 和 Java 9,还采用了一种全新的编程范例,并提供了反应式流的支持。

Spring 5主要有以下新特性:

Spring 生态

Spring Boot

什么是Spring Boot

Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程,该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。

Spring Boot 默认配置了很多框架的使用方式,就像 Maven 整合了所有的 jar 包,Spring Boot 整合了所有的框架。

它的核心设计思想是:约定优于配置。

Spring Boot 所有开发细节都是依据此思想进行实现的。

Spring Boot 是一套全新的框架,它来自于 Spring 大家族,因此 Spring 所有具备的功能它都有并且更容易使用;同时还简化了基于 Spring 的应用开发,通过少量的代码就能创建一个独立的、产品级别的 Spring 应用。

SpringBoot在Spring生态中的位置:

SpringBoot在Spring生态中的位置

Spring Boot 的优点

Spring Boot 2.0 的新变化

Maven

Apache Maven是一个项目管理和理解工具,它基于项目对象模型(POM)的概念,它可以管理项目的构建、报告和文档。

Maven通过<parent>元素声明父项目依赖,父项目声明的依赖会自动传递到子项目。

在项目的 parent 层,可以通过 <dependencyManagement> 元素来管理 jar 包的版本,让子项目中引用一个依赖而不用显式声明版本号<version>。


links:

author: ijiangtao.net


上一篇下一篇

猜你喜欢

热点阅读