SpringBoot基础篇 (4)—SSMP整合案例

目录

 一、SSMP整合案例

1.1 项目搭建

1.1.1 模块搭建

1.2 实体类开发

1.3 数据层开发

1.3.1 数据层开发——分页功能

1.3.2 数据层开发——条件查询功能

1.4 业务层开发

1.4.1 业务层快速开发

1.5 表现层开发

1.5.1 表现层消息一致性处理

1.6 前后端协议联调

1.6.1 列表功能

1.6.2 添加功能

1.6.3 删除功能

1.6.4 修改功能

1.6.5 业务消息一致性处理

1.6.6 分页功能

1.6.7 删除功能维护

1.6.8 条件查询功能


 一、SSMP整合案例

SpringBoot基础篇 (4)—SSMP整合案例_第1张图片

1.1 项目搭建

1.1.1 模块搭建

①勾上需要使用的技术

SpringBoot基础篇 (4)—SSMP整合案例_第2张图片

②需要手动导入的依赖 

        
        
            com.baomidou
            mybatis-plus-boot-starter
            3.5.1
        

        
        
            com.alibaba
            druid-spring-boot-starter
            1.2.11
        

        
        
            org.projectlombok
            lombok
        

③修改配置文件为yml格式,并且设置端口号

server:
  port: 80

1.2 实体类开发

SpringBoot基础篇 (4)—SSMP整合案例_第3张图片

package com.learn.domain;

import lombok.Data;

/**
 * @author 咕咕猫
 * @version 1.0
 */
@Data
public class Book {
    private Integer id;
    private String type;
    private String name;
    private String description;

}

SpringBoot基础篇 (4)—SSMP整合案例_第4张图片

1.3 数据层开发

SpringBoot基础篇 (4)—SSMP整合案例_第5张图片

SpringBoot基础篇 (4)—SSMP整合案例_第6张图片

SpringBoot基础篇 (4)—SSMP整合案例_第7张图片

SpringBoot基础篇 (4)—SSMP整合案例_第8张图片

SpringBoot基础篇 (4)—SSMP整合案例_第9张图片

1.3.1 数据层开发——分页功能

SpringBoot基础篇 (4)—SSMP整合案例_第10张图片

SpringBoot基础篇 (4)—SSMP整合案例_第11张图片

    @Test
    void testGetPage(){
        IPage page = new Page(1,5);
        bookDao.selectPage(page,null);
        System.out.println(page.getCurrent());
        System.out.println(page.getSize());
        System.out.println(page.getTotal());
        System.out.println(page.getPages());
        System.out.println(page.getRecords());
    }
package com.learn.config;

import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class MPConfig {

    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor(){
        //1.定义Mp拦截器
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        //2.添加具体的拦截器
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor());
        return interceptor;
    }

}

1.3.2 数据层开发——条件查询功能

SpringBoot基础篇 (4)—SSMP整合案例_第12张图片

SpringBoot基础篇 (4)—SSMP整合案例_第13张图片SpringBoot基础篇 (4)—SSMP整合案例_第14张图片

1.4 业务层开发

SpringBoot基础篇 (4)—SSMP整合案例_第15张图片

SpringBoot基础篇 (4)—SSMP整合案例_第16张图片SpringBoot基础篇 (4)—SSMP整合案例_第17张图片

SpringBoot基础篇 (4)—SSMP整合案例_第18张图片SpringBoot基础篇 (4)—SSMP整合案例_第19张图片

1.4.1 业务层快速开发

SpringBoot基础篇 (4)—SSMP整合案例_第20张图片

SpringBoot基础篇 (4)—SSMP整合案例_第21张图片

SpringBoot基础篇 (4)—SSMP整合案例_第22张图片

SpringBoot基础篇 (4)—SSMP整合案例_第23张图片

1.5 表现层开发

SpringBoot基础篇 (4)—SSMP整合案例_第24张图片

SpringBoot基础篇 (4)—SSMP整合案例_第25张图片

SpringBoot基础篇 (4)—SSMP整合案例_第26张图片

SpringBoot基础篇 (4)—SSMP整合案例_第27张图片

package com.learn.controller;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.learn.domain.Book;
import com.learn.service.IBookService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

/**
 * @author 咕咕猫
 * @version 1.0
 */
//@RestController
@RequestMapping("/books")
public class BookController2 {

    @Autowired
    private IBookService bookService;

    @GetMapping
    public List getAll() {
        return bookService.list();
    }

    @PostMapping
    public Boolean save(@RequestBody Book book) {
        return bookService.save(book);
    }

    @PutMapping
    public Boolean update(@RequestBody Book book) {
        return bookService.modify(book);
    }

    @DeleteMapping("{id}")
    public Boolean delete(@PathVariable Integer id) {
        return bookService.delete(id);
    }

    @GetMapping("{id}")
    public Book getById(@PathVariable Integer id) {
        return bookService.getById(id);
    }

    @GetMapping("{currentPage}/{pageSize}")
    public IPage getPage(@PathVariable int currentPage, int pageSize) {
        return bookService.getPage(currentPage,pageSize);
    }

}

SpringBoot基础篇 (4)—SSMP整合案例_第28张图片

1.5.1 表现层消息一致性处理

SpringBoot基础篇 (4)—SSMP整合案例_第29张图片

SpringBoot基础篇 (4)—SSMP整合案例_第30张图片

SpringBoot基础篇 (4)—SSMP整合案例_第31张图片

SpringBoot基础篇 (4)—SSMP整合案例_第32张图片

SpringBoot基础篇 (4)—SSMP整合案例_第33张图片

SpringBoot基础篇 (4)—SSMP整合案例_第34张图片

 SpringBoot基础篇 (4)—SSMP整合案例_第35张图片

package com.learn.controller;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.learn.controller.utils.R;
import com.learn.domain.Book;
import com.learn.service.IBookService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

/**
 * @author 咕咕猫
 * @version 1.0
 */
@RestController
@RequestMapping("/books")
public class BookController {

    @Autowired
    private IBookService bookService;

    @GetMapping
    public R getAll() {
        return new R(true, bookService.list());
    }

    @PostMapping
    public R save(@RequestBody Book book) {
//        R r = new R();
//        boolean flag = bookService.save(book);
//        r.setFlag(flag);
        return new R(bookService.save(book));
    }

    @PutMapping
    public R update(@RequestBody Book book) {
        return new R(bookService.modify(book));
    }

    @DeleteMapping("{id}")
    public R delete(@PathVariable Integer id) {
        return new R(bookService.delete(id));
    }

    @GetMapping("{id}")
    public R getById(@PathVariable Integer id) {
        return new R(true, bookService.getById(id));

    }

    @GetMapping("{currentPage}/{pageSize}")
    public R getPage(@PathVariable int currentPage, int pageSize) {
        return new R(true, bookService.getPage(currentPage, pageSize));
    }

}

SpringBoot基础篇 (4)—SSMP整合案例_第36张图片

1.6 前后端协议联调

1.6.1 列表功能

SpringBoot基础篇 (4)—SSMP整合案例_第37张图片

SpringBoot基础篇 (4)—SSMP整合案例_第38张图片 

SpringBoot基础篇 (4)—SSMP整合案例_第39张图片

1.6.2 添加功能

SpringBoot基础篇 (4)—SSMP整合案例_第40张图片

SpringBoot基础篇 (4)—SSMP整合案例_第41张图片

SpringBoot基础篇 (4)—SSMP整合案例_第42张图片

SpringBoot基础篇 (4)—SSMP整合案例_第43张图片

SpringBoot基础篇 (4)—SSMP整合案例_第44张图片

1.6.3 删除功能

SpringBoot基础篇 (4)—SSMP整合案例_第45张图片

SpringBoot基础篇 (4)—SSMP整合案例_第46张图片

SpringBoot基础篇 (4)—SSMP整合案例_第47张图片

1.6.4 修改功能

SpringBoot基础篇 (4)—SSMP整合案例_第48张图片

SpringBoot基础篇 (4)—SSMP整合案例_第49张图片

SpringBoot基础篇 (4)—SSMP整合案例_第50张图片

SpringBoot基础篇 (4)—SSMP整合案例_第51张图片SpringBoot基础篇 (4)—SSMP整合案例_第52张图片SpringBoot基础篇 (4)—SSMP整合案例_第53张图片

1.6.5 业务消息一致性处理

SpringBoot基础篇 (4)—SSMP整合案例_第54张图片

SpringBoot基础篇 (4)—SSMP整合案例_第55张图片

SpringBoot基础篇 (4)—SSMP整合案例_第56张图片SpringBoot基础篇 (4)—SSMP整合案例_第57张图片

SpringBoot基础篇 (4)—SSMP整合案例_第58张图片 SpringBoot基础篇 (4)—SSMP整合案例_第59张图片

1.6.6 分页功能

SpringBoot基础篇 (4)—SSMP整合案例_第60张图片

SpringBoot基础篇 (4)—SSMP整合案例_第61张图片SpringBoot基础篇 (4)—SSMP整合案例_第62张图片

SpringBoot基础篇 (4)—SSMP整合案例_第63张图片SpringBoot基础篇 (4)—SSMP整合案例_第64张图片

SpringBoot基础篇 (4)—SSMP整合案例_第65张图片

SpringBoot基础篇 (4)—SSMP整合案例_第66张图片

1.6.7 删除功能维护

SpringBoot基础篇 (4)—SSMP整合案例_第67张图片

SpringBoot基础篇 (4)—SSMP整合案例_第68张图片

1.6.8 条件查询功能

SpringBoot基础篇 (4)—SSMP整合案例_第69张图片

SpringBoot基础篇 (4)—SSMP整合案例_第70张图片

SpringBoot基础篇 (4)—SSMP整合案例_第71张图片SpringBoot基础篇 (4)—SSMP整合案例_第72张图片

SpringBoot基础篇 (4)—SSMP整合案例_第73张图片SpringBoot基础篇 (4)—SSMP整合案例_第74张图片

SpringBoot基础篇 (4)—SSMP整合案例_第75张图片

你可能感兴趣的:(框架,笔记,spring,boot,mybatis,java)