目录
一、SpringBoot基础篇。
(1)springboot需要的前置知识。
(2)小知识与小技巧。
(2.1)最简SpringBoot程序所包含的基础文件。
(2.2) Spring程序与SpringBoot程序对比。
(2.3)Idea中隐藏指定文件或指定类型文件。
(2.4)复制模块/工程。
(2.5)解决配置文件-->自动提示功能消失的问题。
(3)创建SpringBoot工程的四种方式。
(3.1)基于Idea创建SpringBoot工程。
(3.2)基于官网创建SpringBoot工程。
(3.3)基于阿里云创建SpringBoot工程。
(3.4)手工创建Maven工程修改为SpringBoot工程。
(4)SpringBoot概述。
(4.1)parent。
(4.2)starter。
(4.3)引导类。
(4.4)辅助功能(内嵌tomcat)。
(5)REST风格。
(5.1)REST简介。
(5.2)RESTful。
(5.3)RESTful快速开发。
(6)基础配置。
(6.1)属性配置。
(6.2)3种属性配置的方式。
(7)yaml。
(7.1)yaml语法和配置属性值。
(7.2)在配置文件中引用属性名。
(7.3)读取单个数据。
(7.4)封装全部数据到Environment对象。
(7.5)指定数据封装。
(8)整合第三方技术。
(8.1)整合JUnit。
(8.2)整合MyBatis。
(8.3)整合MyBatis-Plus。
(8.4)整合Druid。
二、SSMP整合案例。
(1)SSMP整合案例分析。
(2)实例类开发。
(3)数据层开发。
(4)业务层开发。
(4.1)业务层开发。
(4.2)业务层快速开发。(需要知道)
(5)表现层开发。
(5.1)表现层开发。
(5.2)表现层消息一致性处理。
(6)前端开发。
(6.1)前端基本操作-增删改查。
(6.2)业务消息一致性处理(包含异常)。
(6.3)分页功能。
(6.4)条件查询功能(搜索框) 。
(7)案例总结。
注意:我是直接在电脑中复制文件夹(按需要命名)的,然后把除了pom和src的文件配置都删除,然后修改pom里面的名称就可以在idea导入这个项目了。
com.itheima
springboot_02_base_configuration
0.0.1-SNAPSHOT
springboot_02_base_configuration
Demo project for Spring Boot
基于SpringBoot官网创建项目,地址:https://start.spring.io/
基于阿里云创建项目,地址:https://start.aliyun.com
通过阿里云网站创建:
通过idea使用阿里云创建:
org.springframework.boot
spring-boot-starter-parent
3.1.0
17
UTF-8
UTF-8
3.1.0
注意:想要修改springboot的版本,直接在该坐标的(spring-boot.)version标签修改即可。
上面的SpringBoot的三个优点,需要下面四个完成(即parent、 starter 、引导类 、内嵌tomcat)
笔记:定义了许多坐标的版本,避免版本冲突。
笔记:starter这种坐标,相当于一大技术坐标,里面包含所需的坐标。
@SpringBootApplication
public class Springboot0101QuickstartApplication {
public static void main(String[] args) {
ConfigurableApplicationContext ctx = SpringApplication.run(Springboot0101QuickstartApplication.class, args);
BookController bean = ctx.getBean(BookController.class);
System.out.println("bean=======> "+bean);
User user = ctx.getBean(User.class);
System.out.println(user);
}
}
Spring 在绑定配置文件属性时,并不要求属性名字大小写完全一致。在绑定时,Spring 会自动将配置文件中的属性名字转换为驼峰式命名法,然后与 Java 类的属性名字进行匹配。
@SpringBootTest(classes = Springboot04JunitApplication.class)
//@ContextConfiguration(classes = Springboot04JunitApplication.class)
class Springboot04JunitApplicationTests {
//1.注入你需要测试的对象
@Autowired
private BookDao bookDao;
@Test
void contextLoads() {
//2.执行要测试的对象对应的方法
bookDao.save();
}
}
注意:
1、@TableName("tb_user")等注解、实体类继承Model
2、mybatis-plus3.5.3.1可以解决@Autowired等注入问题。
org.springframework.boot
spring-boot-starter-parent
3.1.0
com.baomidou
mybatis-plus-boot-starter
3.5.3.1
下面的这种方式也能使用,但是不属于整合的方式(了解即可):
注意:
1、如果参数是对象类型,需要在请求体中获取,必须要@RequestBody才能获取到。
如果你的请求参数是以 query string 的形式传递的,例如 /users?id=1
,那么可以通过 @RequestParam
注解来获取参数值(如果命名相同,而且没有是否必填等需求,则可以省略),@RequestParam
注解可以指定参数名称、是否必填、默认值等属性。
@PutMapping
public Boolean update(@RequestBody Book book){//注意:必须要有@RequestBody,不然book对象里面的属性都为null,获取不到请求体中的数据
return bookService.update(book,null);
}
2、rest风格多个参数时的使用:每个参数都要有路径变量注解,请求路径参数用/分开。
@GetMapping("{currentPage}/{pageSize}")
public IPage getPage(@PathVariable int currentPage,@PathVariable int pageSize){
return bookService.getPage(currentPage,pageSize);
}