springBoot整合druid、mybatis、mysql、swagger2


创建项目

1.在这里插入图片描述
2.

配置依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <!--定义集成parent类 -->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.4.4</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <!--项目配置,不用动 -->
    <groupId>com.aaa</groupId>
    <artifactId>demo11</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>demo11</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
    <!--spring的核心配置jar包 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <!-- jdbc依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jdbc</artifactId>
        </dependency>
		<!-- druid依赖-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.21</version>
        </dependency>
        <!-- 分页依赖-->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper-spring-boot-starter</artifactId>
            <version>1.2.13</version>
        </dependency>
		<!-- mysql依赖-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.47</version>
        </dependency>
		 <!--swagger-->
        <dependency>
            <groupId>com.spring4all</groupId>
            <artifactId>swagger-spring-boot-starter</artifactId>
            <version>1.9.1.RELEASE</version>
        </dependency>
        <!--好看的ui-->
        <dependency>
            <groupId>com.github.xiaoymin</groupId>
            <artifactId>swagger-bootstrap-ui</artifactId>
            <version>1.9.6</version>
        </dependency>

        <!--thymeleaf模板引擎-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>

		<!--mybatis依赖-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.4</version>
        </dependency>
		<!--逆向工程依赖 -->
        <dependency>
            <groupId>org.mybatis.generator</groupId>
            <artifactId>mybatis-generator-core</artifactId>
            <version>1.4.0</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
        </dependency>
    </dependencies>

	<!--连接maven -->
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

一、配置application.properties?

pringboot支持的两种配置文件(properties\yml)两种配置文件都可以生效,只不过在配置时有一点格式上的差别
在这里插入图片描述注意:1.配置文件名只能叫application.xxx才有效,成功后会变成叶子形状没变就是错了
2.在连接数据库(引入jdbc和druid依赖)后,一定要在springboot主文件可以读取到的配置文件中配置数据源信息,因为在自动装载时,druid类是默认为空的在这里插入图片描述

1.在application.properties中配置数据源的信息

spring.datasource.druid.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.druid.url=jdbc:mysql://localhost:3306/ssm_crud
spring.datasource.druid.username=root
spring.datasource.druid.password=root

2.在application.properties中引入映射文件的配置,在启动类处加入dao接口的扫描

 #映射文件所在的路径
    mybatis.mapper-locations=classpath:mapper/*.xml

主启动类

@SpringBootApplication
@MapperScan(basePackages = {"com.ykq.dao"}) //为dao包下的所有接口生产实现类
@EnableSwagger2//开启swagger2的注解。
public class Springboot03Application {
    public static void main(String[] args) {
        SpringApplication.run(Springboot03Application.class, args);
    }
}

3.springboot整合pageHelper

只需引入就可以用

4.日志

logging.level.com.aaa.dao=debug

5.时间配置

#配置json的时间格式
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8

二、使用步骤

1.mybatis逆向工程生成接口和实体类

我的博文ssm整合中参考
https://editor.csdn.net/md/?articleId=115224255

2.创建swagger2API类生成API

//配置注解必须要
@Configuration
public class SwaggerConFig {

    //获取Swagger2的实例对象Docket
    @Bean
    public Docket getDocket(){
        return    new Docket(DocumentationType.SWAGGER_2)
                //分组
                .groupName("!y129-3")
                //视图
                .apiInfo(getInfo())
                .select()
                //设置那些可以生产文档
                .apis(RequestHandlerSelectors.basePackage("com.demo.controller"))
                //设置那些请求可以生产接口文档
                .paths(PathSelectors.any()).build();

    }

    private ApiInfo getInfo(){
        Contact DEFAULT_CONTACT = new Contact("星星", "http://www.jd.com", "2300316070@qq.com");
        ApiInfo apiInfo=new  ApiInfo("员工管理系统api接口", "员工管理系统api接口", "2.0", "http://www.baidu.com",
                DEFAULT_CONTACT, "Apache 2.0", "http://www.apache.org/licenses/LICENSE-2.0", new ArrayList<VendorExtension>());
        return apiInfo;
    }

3.创建controller和service

在这里插入图片描述

4.为controller加入swagger2的说明

在这里插入图片描述

5.为参数实体类加入swagger2的说明

在这里插入图片描述

6.创建全局异常类,监控异常出现返回错误信息

在这里插入图片描述

三、启动springBoot

提示:这里对文章进行总结:例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

启动成功

在这里插入图片描述

访问成功

在这里插入图片描述

swagger2API的方法

@Api用在类上,说明该类的作用(tags=“说明”)
@ApiOperation用在方法上,说明方法的作用(value=“说明”)
@ApiImplicitParams用在方法上包含一组参数说明({多个或一个 @ApiImplicitParam}
@ApiImplicitParam用在@ApiImplicitParams注解中,指定一个请求参数的各个方面 name = “参数名”, value = “说明”, required = true 是否必须, dataType = “类型”, defaultValue = “默认值”,paramType:参数放在哪个地方, path(用于restful接口)–>请求参数的获取:@PathVariable
@ApiModel描述一个实体类的信息(这种一般用在post创建的时候,使用@RequestBody这样的场景,请求参数无法使用@ApiImplicitParam注解进行描述的时候)
@ApiModelProperty描述一个实体类的属性

版权声明:本文为weixin_56320090原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。