准备
基础:可运行的Spring boot项目
环境:jdk8,maven,Lombok
DB:mysql
项目结构
└─java
│ │ Application.java
│ ├─bean
│ │ BizUserIpRecord.java
│ ├─configs
│ │ MybatisPlusConfig.java
│ ├─controller
│ │ BizUserIpRecordController.java
│ ├─mapper
│ │ BizUserIpRecordMapper.java
│ └─service
│ │ BizUserIpRecordService.java
│ └─impl
│ BizUserIpRecordServiceImpl.java
└─resources
│ application.yml
│ logback-spring.xml
└─mapper
BizUserIpRecordMapper.xml
pom.xml
pom.xml依赖添加
<!--mybatis-plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.1.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
代码相关
实体类:BizUserIpRecord.java
package ***.bean;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
/**
*
* @author Liu xinxing
* @since 2020-06-10
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class BizUserIpRecord implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.AUTO)
private Long id;
//todo 请按照表结构字段添加实体字段
private String tableField;
}
mapper类:BizUserIpRecordMapper.java
package ***.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import ***.bean.BizUserIpRecord;
/**
* @author Liu xinxing
* @since 2020-06-10
*/
public interface BizUserIpRecordMapper extends BaseMapper<BizUserIpRecord> {
}
接口类:BizUserIpRecordService.java
package ***.service;
import com.baomidou.mybatisplus.extension.service.IService;
import ***.bean.BizUserIpRecord;
/**
*
* @author Liu xinxing
* @since 2020-06-10
*/
public interface BizUserIpRecordService extends IService<BizUserIpRecord> {
}
接口实现类:BizUserIpRecordServiceImpl.java
package ***.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import ***.bean.BizUserIpRecord;
import ***.mapper.BizUserIpRecordMapper;
import ***.service.BizUserIpRecordService;
/**
* @author Liu xinxing
* @since 2020-06-10
*/
@Service
public class BizUserIpRecordServiceImpl extends ServiceImpl<BizUserIpRecordMapper, BizUserIpRecord>
implements BizUserIpRecordService {
}
配置相关
数据源,mapper.xml扫描,mapper类扫描,分页插件,日志
1.数据源和mapper.xml扫描:
application.yml
spring:
datasource:
url: jdbc:mysql://localhost:3306/dbName?characterEncoding=UTF-8&useUnicode=true&useSSL=false&serverTimezone=GMT%2B8
username: ***
password: ***
driver-class-name: com.mysql.jdbc.Driver
mybatis-plus:
mapper-locations: classpath*:mapper/*.xml #看你的mapper.xml目录来确定
# type-aliases-package: ***.bean 可要可不要,影响能否在mapper.xml中直接写实体类名(不配置就写全路径指向呗)
configuration:
map-underscore-to-camel-case: true #下划线转驼峰 默认为true
2.mapper类扫描:多种方案(1.在mapper加@mapper注解;2.启动类指定;此处取第2种)
Application.java添加@MapperScan注解
package ***;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* @author liuxx
* @date 2020年5月27日
*/
@SpringBootApplication
@MapperScan("***.mapper")
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
3.分页插件添加
MybatisPlusConfig.java
package ***.configs;
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class MybatisPlusConfig {
@Bean
public PaginationInterceptor paginationInterceptor() {
return new PaginationInterceptor();
}
}
sql 日志输出(选配
)
logback-spring.xml
<!--myibatis log configure -->
<logger name="top.gdjia.www.mapper" level="DEBUG" />
完结!!!
使用:直接注入service使用就好了