SpringBoot
1.是什么
SpringBoot 是由Pivotal 团队提供的框架
2.为什么
设计目的:用来简化Spring 应用的初始搭建以及开发过程。
3.怎么样
该框架使用特定方式来进行配置,使开发人员不需要定义样板化的配置
4.特点
① 创建独立的Spring 应用程序
② 嵌入的Tomcat ,无需部署WAR 文件
③ 简化Maven 配置
④自动配置Spring
⑤提供生产就绪型功能,如指标,健康检查和外部配置
⑥ 开箱即用,无需配置XML
4.1.关于特性理解
SpringBoot 并不是对Spring 功能上的增强,而是提供了一种快速使用Spring的方式
6.如何通过 IDEA 搭建SpringBoot
搭建步骤三步
- New Project 弹出如下信息,选择 Maven 和 JDK 版本
2.切换到web 可以选择Spring Boot 版本,此处选择的是2.3.3
3.切换到 SQL ,选择需要加载的SQL 驱动
4.新建完成后项目目录结构如下(删除test 目录)
配置
一 Parent
此处作用:SpringBoot 父节点依赖,引入这个之后相关的引入就不需要添加version 配置,SpringBoot 会自动选择最合适的版本进行添加
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
二 指定JDK
<properties>
<java.version>1.8</java.version>
</properties>
三 引入SpringBoot
说明:由于上面执行了parent 的 version ,所以这里不需要再添加版本号(正常如果是Maven 引入是需要指定版本号的,这里上面parent 指定了version ,所以这里才不需要)
添加如下,默认生成的没有
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
另,引入这个spring-boot-starter-web 作用,提供了MVC,AOP 等的依赖包
四 Coding
1. Coding 之 编写步骤
1 新建controller 类
@RestController 等价于 @Controller 和 @RequestBody
@RestController
public class HelloWorld {
}
2 新建启动类(Main)
/**使用 @SpringBootApplication 指定这是一个Spring boot 的应用程序
*
*/
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
System.out.println("HelloWorld");
}
}
3 测试代码
启动 DemoApplication
五 报错
Error creating bean with name 'org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfigurati
这是因为spring boot 会默认加载org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration这个类,
DataSourceAutoConfiguration类
使用了@Configuration注解向spring注入了dataSource bean。因为工程中没有关于dataSource相关的配置信息,
当spring创建dataSource bean因缺少相关的信息就会报错。**
修改后启动类代码如下(注意,此处由红色不管他,是idea 工具配置问题)
@SpringBootApplication
@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
System.out.println("HelloWorld");
}
这种是IDEA级别的检查错误
访问测试
2. Coding 之 编写返回json数据的
1.编写实体类 Demo
2. 编写getDemo() 方法
3. 测试
@RequestMapping("/getDemo")
public Demo getDemo(){
Demo demo = new Demo();
demo.setId(1);
demo.setName("张三");
return demo;
}
解释上面为何能显示json 串