- Spring Boot简介
- Spring Boot快速入门
- Spring Boot引导过程
- Spring Boot Tomcat部署
- Spring Boot构建系统
- Spring Boot代码结构
- Spring Boot Bean和依赖注入
- Spring Boot运行器(Runner)
- Spring Boot应用程序属性
- Spring Boot日志
- Spring Boot构建RESTful Web服务
- Spring Boot异常处理
- Spring Boot拦截器
- Spring Boot Servlet过滤器
- Spring Boot Tomcat端口号
- Spring Boot Rest模板
- Spring Boot文件处理
- Spring Boot服务组件
- Spring Boot Thymeleaf示例
- Spring Boot使用RESTful Web服务
- Spring Boot CORS支持
- Spring Boot国际化
- Spring Boot调度
- Spring Boot启用HTTPS
- Spring Boot Eureka服务器
- Spring Boost Eureka服务注册
- Spring Boot Zuul代理服务器和路由
- Spring Boot云配置服务器
- Spring Boot云配置客户端
- Spring Boot Actuator
- Spring Boot管理服务器
- Spring Boot管理客户端
- Spring Boot启用Swagger2
- Spring Boot创建Docker镜像
- Spring Boot跟踪微服务日志
- Spring Boot Flyway数据库
- Spring Boot发送电子邮件
- Spring Boot Hystrix
- Spring Boot Web Socket
- Spring Boot批量服务
- Spring Boot Apache Kafka
- Spring Boot单元测试用例
- Spring Boot Rest控制器单元测试
- Spring Boot数据库源(连接数据库)
- Spring Boot保护Web应用程序
Spring Boot简介
Spring Boot是一个基于Java的开源框架,用于创建微服务。它由Pivotal Team开发,用于构建独立的生产就绪Spring应用。 本章将介绍Spring Boot,并熟悉基本概念。
微服务是什么?
微服务(Micro Service)是一种允许开发人员独立开发和部署服务的体系结构。每个运行的服务都有自己的流程,这实现了轻量级模型以支持业务应用程序。
优点
微服务为其开发人员提供以下优势 -
- 易于部署
- 简单的可扩展性
- 与容器兼容
- 最低配置
- 生产时间较短
Spring Boot是什么?
Spring Boot为Java开发人员提供了一个很好的平台,可以开发一个可以运行的独立和生产级Spring应用程序。可以开始使用最少的配置,而无需进行整个Spring配置设置。
优点
Spring Boot为其开发人员提供以下优势 -
- 易于理解和开发Spring应用
- 提高生产力
- 缩短开发时间
目标
Spring Boot的设计目标如下 -
- 避免在Spring中进行复杂的XML配置
- 以更简单的方式开发生产就绪的Spring应用程序
- 减少开发时间并独立运行应用程序
- 提供一种更简单的应用程序入门方式
为什么选择Spring Boot?
选择Spring Boot,因为它提供的功能和优点如下 -
- 它提供了一种灵活的方法来配置Java Bean,XML配置和数据库事务。
- 它提供强大的批处理和管理REST端点。
- 在Spring Boot中,一切都是自动配置的; 无需手动配置。
- 它提供基于注释的spring应用程序。
- 简化依赖管理。
- 它包括嵌入式Servlet容器。
Spring Boot是如何工作的?
Spring Boot会根据使用@EnableAutoConfiguration
批注添加到项目中的依赖项自动配置应用程序。 例如,如果MySQL数据库在类路径上,但尚未配置任何数据库连接,则Spring Boot会自动配置内存数据库。
spring boot应用程序的入口点是包含@SpringBootApplication
注释和main
方法的类。
Spring Boot使用@ComponentScan
注释自动扫描项目中包含的所有组件。
Spring Boot Starters
处理依赖管理对于大项目来说是一项艰巨的任务。 Spring Boot通过提供一组依赖项来解决此问题,以方便开发人员。
例如,如果要使用Spring和JPA进行数据库访问,则在项目中包含spring-boot-starter-data-jpa
依赖项就足够了。
请注意,所有Spring Boot启动程序都遵循相同的命名模式spring-boot-starter-*
,其中*
表示它是应用程序的一种类型。
例子
请看下面的Spring Boot启动器,以便更好地理解 -
Spring Boot Starter Actuator依赖关系用于监视和管理应用程序。 其代码如下所示 -
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency>
Spring Boot Starter Security依赖项用于Spring Security。 其代码如下所示 -
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency>
Spring Boot Starter Web依赖项用于编写Rest端点。 其代码如下所示 -
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>
Spring Boot Starter Thyme Leaf依赖项用于创建Web应用程序。 其代码如下所示 -
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency>
Spring Boot Starter Test依赖项用于编写测试用例。 其代码如下所示 -
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test<artifactId> </dependency>
自动配置
Spring Boot Auto Configuration会根据在项目中添加的JAR依赖项自动配置Spring应用程序。例如,如果MySQL数据库在类路径上,但尚未配置任何数据库连接,则Spring Boot会自动配置内存数据库。
为此,需要将@EnableAutoConfiguration
批注或@SpringBootApplication
批注添加到主类文件中。然后,将自动配置Spring Boot应用程序。
请注意以下代码以便更好地理解 -
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; @EnableAutoConfiguration public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } }
Spring Boot应用程序
Spring Boot Application的入口点是包含@SpringBootApplication
注释的类。该类应具有运行Spring Boot应用程序的主要方法。 @SpringBootApplication
注释包括自动配置,组件扫描和Spring Boot配置。
如果将@SpringBootApplication
批注添加到类中,则无需添加@EnableAutoConfiguration
,@ComponentScan
和@SpringBootConfiguration
批注。@SpringBootApplication
注释包括所有其他注释。
请注意以下代码以便更好地理解 -
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } }
组件扫描
Spring Boot应用程序在应用程序初始化时扫描所有bean和包声明。需要为类文件添加@ComponentScan
批注,以扫描项目中添加的组件。
请注意以下代码以便更好地理解 -
import org.springframework.boot.SpringApplication; import org.springframework.context.annotation.ComponentScan; @ComponentScan public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } }
上一篇:没有了
下一篇:Spring Boot快速入门
- Java教程
- Vim教程
- Swing教程
- Spring教程
- Spring Web Services教程
- Spring MVC教程
- Spring JDBC教程
- Spring Cloud教程
- Spring Boot教程
- Spring Boot CLI教程
- Spring Batch教程
- Spring AOP教程
- PDFBox教程
- JSP教程
- JSF教程
- JPA教程
- Java面向对象设计
- Java设计模式
- Java虚拟机教程
- Java泛型教程
- Java正则表达式教程
- Java数据类型教程
- Java并发编程教程
- Java密码学教程
- Java多线程教程
- Java国际化(i18n)教程
- JavaFX教程
- Java9教程
扫描二维码
程序员编程王