1、新建project

IDEA搭建springboot项目集成mybatis,swagger,maven,mysql


2、选择Spring Initializr,next

IDEA搭建springboot项目集成mybatis,swagger,maven,mysql


3、设置项目名

IDEA搭建springboot项目集成mybatis,swagger,maven,mysql

4、选择依赖,右侧的要全选,否则可能会引发错误

IDEA搭建springboot项目集成mybatis,swagger,maven,mysql

5、finish,等待依赖下载完成

6、pom.xml文件配置

<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>

   <groupId>com.wquanxiu</groupId>
   <artifactId>carappserver</artifactId>
   <version>0.0.1-SNAPSHOT</version>
   <packaging>jar</packaging>

   <name>carappserver</name>
   <description>Demo project for Spring Boot</description>

   <parent>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-parent</artifactId>
      <version>2.0.1.RELEASE</version>
      <relativePath/> <!-- lookup parent from repository -->
   </parent>

   <properties>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
      <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
      <java.version>1.8</java.version>
   </properties>

   <dependencies>
      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter</artifactId>
      </dependency>

      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-test</artifactId>
         <scope>test</scope>
      </dependency>

      <!--引入Web模块-->
      <!-- 引入Web模块 -->
      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-web</artifactId>
      </dependency>

      <!--引入swagger相关依赖-->
      <dependency>
         <groupId>io.springfox</groupId>
         <artifactId>springfox-swagger2</artifactId>
         <version>2.4.0</version>
      </dependency>
      <dependency>
         <groupId>io.springfox</groupId>
         <artifactId>springfox-swagger-ui</artifactId>
         <version>2.4.0</version>
      </dependency>

      <!--mybatis相关依赖-->
      <dependency>
         <groupId>org.mybatis.spring.boot</groupId>
         <artifactId>mybatis-spring-boot-starter</artifactId>
         <version>1.2.0</version>
      </dependency>
      <dependency>
         <groupId>mysql</groupId>
         <artifactId>mysql-connector-java</artifactId>
      </dependency>

      <!--session相关-->
      <dependency>
         <groupId>javax.servlet</groupId>
         <artifactId>javax.servlet-api</artifactId>
         <version>3.1.0</version>
         <scope>provided</scope>
      </dependency>

      <!-- spring aop支持及AspectJ依赖-->
      <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-aop</artifactId>
      </dependency>

      <!--json-->
      <dependency>
         <groupId>net.sf.json-lib</groupId>
         <artifactId>json-lib</artifactId>
         <version>2.4</version>
         <classifier>jdk15</classifier>
      </dependency>
   </dependencies>

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

         <!--打包插件-->
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
               <source>1.8</source>
               <target>1.8</target>
            </configuration>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <configuration>
               <archive>
                  <manifest>
                     <addClasspath>true</addClasspath>
                     <useUniqueVersions>false</useUniqueVersions>
                     <classpathPrefix>lib/</classpathPrefix>
                     <mainClass>com.wquanxiu.carappserver.CarappserverApplication</mainClass>
                  </manifest>
               </archive>
            </configuration>
         </plugin>
      </plugins>
   </build>


</project>


7、配置文件application.properties

server.port=8095
#配置相关连接池和端口信息
spring.datasource.url=jdbc:mysql://localhost:3306/server?useSSL=false
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver


spring.datasource.max-active=20
spring.datasource.max-idle=8
spring.datasource.min-idle=8
spring.datasource.inittial-size=10

#加载mapper映射文件
mybatis.type-aliases-package=com.wquanxiu.carappserver.Entity
mybatis.mapper-locations=classpath:/mapper/**.xml

8、业务分层:Controller控制层,Dao数据访问层,Entity实体层,Service服务层

IDEA搭建springboot项目集成mybatis,swagger,maven,mysql

9、Controller层代码,UserInfoController.java

package com.wquanxiu.carappserver.Controller;

import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import com.wquanxiu.carappserver.Service.UserInfoService;
/**
 * Created by wangquanxiu at 2018/4/11 15:28
 */
@RestController
@RequestMapping("/userinfo")
@ResponseBody
public class UserInfoController {
    @Autowired
    UserInfoService userInfoService;
    @ApiOperation(value = "新增记录",httpMethod = "POST")
    @RequestMapping(value = "/addrecord/{username}/{password}")
    public int addRecord(@PathVariable("username") String username, @PathVariable("password") String password){
        System.out.println("controller--request:user-register>>"+username+" "+password);
        return  userInfoService.addRecord(username,password);
    }
}

10、Dao层,UserInfoDao.java

package com.wquanxiu.carappserver.Dao;

import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

/**
 * Created by wangquanxiu at 2018/4/11 15:28
 */
@Repository
public interface UserInfoDao {
    //新增记录返回自增id
    int addRecord(@Param("username") String username, @Param("password") String password);

}

11、添加Dao层的映射文件UserInfoDao.xml

IDEA搭建springboot项目集成mybatis,swagger,maven,mysql

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.wquanxiu.carappserver.Dao.UserInfoDao">

    <insert id="addRecord" parameterType="com.wquanxiu.carappserver.Entity.UserInfo"
            useGeneratedKeys="true">
        INSERT INTO userinfo (username,password) VALUES (#{username}, #{password})
    </insert>
</mapper>

12、Entity层,UserInfo.java

package com.wquanxiu.carappserver.Entity;

/**
 * Created by wangquanxiu at 2018/4/11 15:29
 */
public class UserInfo {
    private int id;
    private String username;
    private String password;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}

13、Service层,UserInfoService.java

package com.wquanxiu.carappserver.Service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.wquanxiu.carappserver.Dao.UserInfoDao;
/**
 * Created by wangquanxiu at 2018/4/11 15:29
 */
@Service
public class UserInfoService {
    @Autowired
    UserInfoDao userInfoDao;

    //新增记录返回自增id
    public int addRecord(String username, String password){
        return  userInfoDao.addRecord(username,password);
    }
}

14、Demo4Application.java应用入口

package com.wquanxiu.carappserver;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.EnableAspectJAutoProxy;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@SpringBootApplication
@EnableSwagger2
@EnableAspectJAutoProxy
@MapperScan("com.wquanxiu.carappserver.Dao")//指明映射文件的位置
public class CarappserverApplication {

   public static void main(String[] args) {
      SpringApplication.run(CarappserverApplication.class, args);
   }
}

15、运行

IDEA搭建springboot项目集成mybatis,swagger,maven,mysql

16、访问http://localhost:8095/swagger-ui.html  ,  8095是端口号,在application.properties设置。

IDEA搭建springboot项目集成mybatis,swagger,maven,mysql


17、测试

IDEA搭建springboot项目集成mybatis,swagger,maven,mysql

IDEA搭建springboot项目集成mybatis,swagger,maven,mysql


查看本地数据库,记录已经插入

IDEA搭建springboot项目集成mybatis,swagger,maven,mysql

分类:

技术点:

相关文章: