赞
踩
Spring Boot是Pivotal团队在Spring的基础上提供的一套全新的开源框架,其目的是为了简化Spring应用的搭建和开发过程。Spring Boot去除了大量的XML配置文件,简化了复杂的依赖管理。
Spring Boot是简化Spring应用开发的一个框架、整个Spring技术栈的一个大整合(Spring全家桶时代)、J2EE开发的一站式解决方案(Spring Cloud是分布式整体解决方案)。
优点:
– 快速创建独立运行的Spring项目以及与主流框架集成
– 使用嵌入式的Servlet容器,应用无需打成WAR包
– starters自动依赖与版本控制
– 大量的自动配置,简化开发,也可修改默认值
– 无需配置XML,无代码生成,开箱即用
– 准生产环境的运行时应用监控
– 与云计算的天然集成
– 单体应用:ALL IN ONE(所有内容都在一个应用里面)
– 微服务:每一个功能元素最终都是一个可独立替换和独立升级的软件单元
微服务是一种架构风格(服务微化),一个应用应该是一组小型服务,可以通过HTTP的方式进行互通
工程创建及案例可以参考文章进行操作:在IDEA中创建SpringBoot项目
父项目是Spring Boot的版本仲裁中心(他来真正管理Spring Boot应用里面的所有依赖版本),以后我们导入依赖默认是不需要写版本(没有在dependencies里面管理的依赖自然需要声明版本号)
xml
复制代码
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.7.11</version> <relativePath/> <!-- lookup parent from repository --> </parent>
启动器 spring-boot-starter(spring-boot场景启动器)
,spring-boot-starter-web 帮我们导入了web模块正常运行所依赖的组件。
xml
复制代码
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies>
Spring Boot将所有的功能场景都抽取出来,做成一个个的starters(启动器),只需要在项目里面引入这些starter相关场景的所有依赖都会导入进来。要用什么功能就导入什么场景的启动器。
java
复制代码
// 自动生成的 @SpringBootApplication public class SpringBootDemo0Application { public static void main(String[] args) { SpringApplication.run(SpringBootDemo0Application.class, args); } }
@SpringBootApplication
: Spring Boot应用标注在某个类上说明这个类是SpringBoot的主配置类,SpringBoot 就应该运行这个类的main方法来启动SpringBoot应用。
SpringBoot使用一个全局的配置文件,配置文件名固定:application.properties
或者 application.yml
。配置文件放在 src/main/resources目录
或者 类路径/config
下。作用是修改SpringBoot自动配置的默认值。
YAML(YAML Ain't Markup Language),.yml为结尾,以数据为中心,比json、xml等更适合做配置文件。
java
复制代码
YAML配置例子 server: port: 8081 等价于XML配置: <server> <port>8081</port> </server>
【语法】key: value(注意冒号后面有个空格)
以空格的缩进来控制层级关系,只要是左对齐的一列数据,都是同一个层级
【值写法】
(1)字面量:普通的值(数字,字符串,布尔)
(2)对象、Map
java
复制代码
friends: lastName: zhangsan age: 20 或者: friends: {lastName:zhangsan,age:18}
(3)数组(List、Set)
java
复制代码
pets: ‐ cat ‐ dog ‐ pig pets: [cat,dog,pig]
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。