JavaEE学习笔记-Swagger,MyBatisPlus快速上手,分页查询

一、Swagger

为了方便API接口管理,可以利用Swagger工具

要注意版本兼容问题,我的Spring Boot版本原先是2.6.11,后来改为2.5.6(因为版本太高,无论我如何配置都不行,如果有成功的朋友也可以评论分享)。
如果版本不对会报以下错误

Failed to start bean ‘documentationPluginsBootstrapper’; nested
exception is java.lang.NullPointerException

修改Spring Boot版本
在这里插入图片描述
添加对应的依赖,Swagger 版本是2.9.2

  <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.9.2</version>
        </dependency>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.9.2</version>
        </dependency>

创建配置类:

@Configuration
@EnableSwagger2
public class Swagger2Config {
    
    
    @Bean
    public Docket webApiConfig(){
    
    

        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(webApiInfo())
                .select()
                //过滤掉所有error或error.*页面
                .paths(PathSelectors.any())
                .build();
    }


    private ApiInfo webApiInfo(){
    
    

        return new ApiInfoBuilder()
                .title("网站-课程中心API文档")
                .description("本文档描述了课程中心微服务接口定义")
                .version("1.0")
                .build();
    }
}

配置好之后在浏览器输入
http://localhost:8080/swagger-ui.html
在这里插入图片描述
为了方便理解接口含义,还可以注释 @ApiOperation(“解释接口功能”)
在这里插入图片描述
然后刷新页面就可以看见,接口注释情况
在这里插入图片描述
在这里插入图片描述

二、MyBatisPlus快速上手

导入依赖包:

 <!--mybatis-plus 依赖包 -->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.2</version>
        </dependency>
        <!--mysql 驱动依赖 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <!--数据连接池druid -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.2.1</version>
            <scope>runtime</scope>
        </dependency>
# MySQL驱动包
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#数据连接池
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
# 数据库连接地址
spring.datasource.url=jdbc:mysql://localhost:3306/javatest?characterEncoding=utf8&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=root
#指定日志输出格式
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl

建立一个mapper包,用来存放数据库的一些操作,然后复制它的全包名
在这里插入图片描述
然后在启动类加上,粘贴即可
@MapperScan(“com.example.demo.mapper”)
在这里插入图片描述
一般数据查询是由Mybatic去实现,所以创建一个UserMapper接口不需要写出具体内容。
在这里插入图片描述
创建一个实体包(entity),然后创建用户类(按住Alt+Insert快速添加get/set方法)
在这里插入图片描述
其中继承的 BaseMapper是由MybatisPlus提供的(简化了不少代码),<>里面需要跟要操作的数据库里面的表名一样,当表名与entity里面命名的不一样,可以添加@TableName(“数据库中表的真实名”),如:@TableName("t_user")

@Mapper
public interface UserMapper extends BaseMapper<User> {
    
    }

在这里插入图片描述
更多注解见:Mybatis-plus注解

三、分页查询

1.先做一个配置

定义一个配置类:

package com.example.demo.config;

import com.baomidou.mybatisplus.annotation.DbType;
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 MyBatisPlusConfig {
    
    
    /**
     * 分页插件。如果你不配置,分页插件将不生效
     */
    @Bean
    public MybatisPlusInterceptor paginationInterceptor() {
    
    
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        // 指定数据库方言为 MYSQL
        PaginationInnerInterceptor paginationInnerInterceptor= new PaginationInnerInterceptor(DbType.MYSQL);
        interceptor.addInnerInterceptor(paginationInnerInterceptor);
        return interceptor;
    }
}

2.在Conroller控制类进行检验

//分页查询
    @GetMapping("/page")
    public IPage findBypage(){
    
    
        Page<User> page = new Page<>(0,3);
        IPage iPage = userMapper.selectPage(page,null);
        return iPage;
    }

四、SpringBoot文件上传

Spring Boot 实现文件上传功能:
Spring Boot工程嵌入的Tomcat限制了请求的文件大小,每个文件的配置最大为1Mb,单次请求的文件的总数不能大于10Mb.
往往可以在配置文件(application.properties)中加入两个配置,来进行更改

spring.servlet.multipart.max-file-size=10MB
spring.servlet.multipart.max-request-size=10MB

猜你喜欢

转载自blog.csdn.net/qq_46304554/article/details/129333031
今日推荐