35.SpringBoot基础篇

目录

一、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)案例总结。 


一、SpringBoot基础篇。

(1)springboot需要的前置知识。 

35.SpringBoot基础篇_第1张图片

(2)小知识与小技巧。 

(2.1)最简SpringBoot程序所包含的基础文件。 

35.SpringBoot基础篇_第2张图片

(2.2) Spring程序与SpringBoot程序对比。

35.SpringBoot基础篇_第3张图片

(2.3)Idea中隐藏指定文件或指定类型文件。

35.SpringBoot基础篇_第4张图片

(2.4)复制模块/工程。

注意:我是直接在电脑中复制文件夹(按需要命名)的,然后把除了pom和src的文件配置都删除,然后修改pom里面的名称就可以在idea导入这个项目了。 

    com.itheima

	springboot_02_base_configuration
	0.0.1-SNAPSHOT    

	springboot_02_base_configuration
	Demo project for Spring Boot

35.SpringBoot基础篇_第5张图片

(2.5)解决配置文件-->自动提示功能消失的问题。 

35.SpringBoot基础篇_第6张图片

(3)创建SpringBoot工程的四种方式。

(3.1)基于Idea创建SpringBoot工程。

(3.2)基于官网创建SpringBoot工程。

基于SpringBoot官网创建项目,地址:https://start.spring.io/ 

35.SpringBoot基础篇_第7张图片

(3.3)基于阿里云创建SpringBoot工程。

基于阿里云创建项目,地址:https://start.aliyun.com 

通过阿里云网站创建:

35.SpringBoot基础篇_第8张图片

通过idea使用阿里云创建: 

35.SpringBoot基础篇_第9张图片

 
    
        org.springframework.boot
        spring-boot-starter-parent
        3.1.0
         
    


    
        17
        UTF-8
        UTF-8
        3.1.0
    

 注意:想要修改springboot的版本,直接在该坐标的(spring-boot.)version标签修改即可。

(3.4)手工创建Maven工程修改为SpringBoot工程。

35.SpringBoot基础篇_第10张图片

(4)SpringBoot概述。

35.SpringBoot基础篇_第11张图片

上面的SpringBoot的三个优点,需要下面四个完成(即parent、 starter 、引导类 、内嵌tomcat)

(4.1)parent。

笔记:定义了许多坐标的版本,避免版本冲突。

(4.2)starter。

 笔记:starter这种坐标,相当于一大技术坐标,里面包含所需的坐标。

35.SpringBoot基础篇_第12张图片

(4.3)引导类。

@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);
    }
}

35.SpringBoot基础篇_第13张图片

(4.4)辅助功能(内嵌tomcat)。

35.SpringBoot基础篇_第14张图片

(5)REST风格。

(5.1)REST简介。

35.SpringBoot基础篇_第15张图片

(5.2)RESTful。 

(5.3)RESTful快速开发。

(6)基础配置。 

(6.1)属性配置。

35.SpringBoot基础篇_第16张图片

(6.2)3种属性配置的方式。 

35.SpringBoot基础篇_第17张图片

(7)yaml。

(7.1)yaml语法和配置属性值。

(7.2)在配置文件中引用属性名。 

35.SpringBoot基础篇_第18张图片

(7.3)读取单个数据。 

35.SpringBoot基础篇_第19张图片

(7.4)封装全部数据到Environment对象。

35.SpringBoot基础篇_第20张图片

(7.5)指定数据封装。

Spring 在绑定配置文件属性时,并不要求属性名字大小写完全一致。在绑定时,Spring 会自动将配置文件中的属性名字转换为驼峰式命名法,然后与 Java 类的属性名字进行匹配。

35.SpringBoot基础篇_第21张图片

(8)整合第三方技术。

(8.1)整合JUnit。

@SpringBootTest(classes = Springboot04JunitApplication.class)
//@ContextConfiguration(classes = Springboot04JunitApplication.class)
class Springboot04JunitApplicationTests {
    //1.注入你需要测试的对象
    @Autowired
    private BookDao bookDao;
    @Test
    void contextLoads() {
        //2.执行要测试的对象对应的方法
        bookDao.save();
    }
}

35.SpringBoot基础篇_第22张图片

(8.2)整合MyBatis。

35.SpringBoot基础篇_第23张图片

(8.3)整合MyBatis-Plus。

注意:

1、@TableName("tb_user")等注解、实体类继承Model都属于mybatis-plus坐标的。

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
        

35.SpringBoot基础篇_第24张图片

(8.4)整合Druid。

35.SpringBoot基础篇_第25张图片

下面的这种方式也能使用,但是不属于整合的方式(了解即可):

35.SpringBoot基础篇_第26张图片

二、SSMP整合案例。

(1)SSMP整合案例分析。 

35.SpringBoot基础篇_第27张图片

(2)实例类开发。

35.SpringBoot基础篇_第28张图片

(3)数据层开发。

(4)业务层开发。

(4.1)业务层开发。

35.SpringBoot基础篇_第29张图片

(4.2)业务层快速开发。(需要知道) 

(5)表现层开发。 

注意:

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);
}

(5.1)表现层开发。 

(5.2)表现层消息一致性处理。

(6)前端开发。

(6.1)前端基本操作-增删改查。

35.SpringBoot基础篇_第30张图片

(6.2)业务消息一致性处理(包含异常)。

35.SpringBoot基础篇_第31张图片

(6.3)分页功能。

35.SpringBoot基础篇_第32张图片

(6.4)条件查询功能(搜索框) 。

(7)案例总结。 

35.SpringBoot基础篇_第33张图片

你可能感兴趣的:(web技术,spring,boot,java,spring)