基于SpringBoot的SSMP整合(数据层)
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
模块创建
新建
添加依赖项
由于parent没有版本维护还需在pom.xml文件再次添加
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.3</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.6</version>
</dependency>
在resources文件下重命名
添加端口配置
server:
port: 80
实体类快速开发lombok
新建一个软件包新建一个实体类
Lombok一个Java类库提供一组注解简化POJO实体类开发
首先在pom.xml导入对应坐标:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
package com.example.ssmp_demo.domain;
import lombok.Data;
//lombok
@Data//设置get set方法
public class Book {
private Integer id;
private String type;
private String name;
private String description;
}
然后你应该创建一个数据库按照Book类属性创建
然后给表中添加数据。
数据层开发
yml文件配置
spring:
datasource:
druid:
driver-class-name: com.mysql.cj.jdbc.Driver
username: root
password: root
url: jdbc:mysql://localhost:3306/ssm_db?serverTimezone=UTC
mybatis-plus:
global-config:
db-config:
table-prefix: tb1_
新建数据层接口
package com.example.ssmp_demo.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.ssmp_demo.domain.Book;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface BookDao extends BaseMapper<Book> {
}
开启MP运行日志
在这个文件里添加配置
mybatis-plus:
global-config:
db-config:
table-prefix: tb1_
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
你可以在控制台查看到操作的过程。
分页
新建配置类
结构
package com.example.ssmp_demo.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(){
MybatisPlusInterceptor interceptor=new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor());//添加内部拦截器
return interceptor;
}
}
新建测试类
package com.example.ssmp_demo.dao;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
public class BookDaoTest {
@Autowired
private BookDao bookDao;
@Test
void test(){
IPage page = new Page(1,3);
bookDao.selectPage(page,null);
}
}
给出表
运行过后
共有6条数据显示第一页三条数据。
修改new Page数据
IPage page = new Page(2,3);
第二页三条数据。
条件查询
测试使用
QueryWrapper接口来进行条件查询
package com.example.ssmp_demo.dao;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.example.ssmp_demo.domain.Book;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
public class BookDaoTest {
@Autowired
private BookDao bookDao;
@Test
void test(){
QueryWrapper<Book>qw=new QueryWrapper<>();
qw.like("name","3");//查询name带有3的数据
bookDao.selectList(qw);
}
}
你也可以使用其他方法来进行查询。