1. 这个是我们的mybatisplus的依赖
<!--mybatis plus和springboot整合-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.1</version>
</dependency>
2. 编写controller-service-mapper
<?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.lzh.xd_shop.mapper.BannerMapper">
<select id="getAllbannerInfo" resultType="com.lzh.xd_shop.model.BannerDO">
select * from banner;
</select>
</mapper>
pom.xml build 标签中加入如下配置
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
</build>
mapper层
package com.lzh.xd_shop.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.lzh.xd_shop.model.BannerDO;
import java.util.List;
/**
* @Author:kaiyang.cui
* @Package:com.lzh.xd_shop.mapper
* @Project:xd_shop
* @name:BannerMapper
* @Date:2023/4/1 下午3:51
* @Filename:BannerMapper
* @Description:BannerMapper
* @Version:1.0
*/
public interface BannerMapper extends BaseMapper<BannerDO> {
/**
* 获取所有banner信息
* @return 返回所有的banner信息
*/
List<BannerDO> getAllbannerInfo();
}
service层
package com.lzh.xd_shop.service;
import com.lzh.xd_shop.model.BannerDO;
import java.util.List;
/**
* @Author:kaiyang.cui
* @Package:com.lzh.xd_shop.service
* @Project:xd_shop
* @name:BannerService
* @Date:2023/4/1 下午3:53
* @Filename:BannerService
* @Description:BannerService
* @Version:1.0
*/
public interface BannerService {
List<BannerDO> listAllBanner();
List<BannerDO> getAllbannerInfo();
}
package com.lzh.xd_shop.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.lzh.xd_shop.mapper.BannerMapper;
import com.lzh.xd_shop.model.BannerDO;
import com.lzh.xd_shop.service.BannerService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @Author:kaiyang.cui
* @Package:com.lzh.xd_shop.service.impl
* @Project:xd_shop
* @name:BannerServiceImpl
* @Date:2023/4/1 下午3:53
* @Filename:BannerServiceImpl
* @Description:BannerServiceImpl
* @Version:1.0
*/
@Service
public class BannerServiceImpl implements BannerService {
@Autowired
private BannerMapper bannerMapper;
@Override
public List<BannerDO> listAllBanner() {
return bannerMapper.selectList(new QueryWrapper<>());
}
@Override
public List<BannerDO> getAllbannerInfo() {
return bannerMapper.getAllbannerInfo();
}
}
controller层
package com.lzh.xd_shop.controller;
import com.lzh.xd_shop.model.BannerDO;
import com.lzh.xd_shop.service.BannerService;
import com.lzh.xd_shop.utils.JsonData;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* @Author:kaiyang.cui
* @Package:com.lzh.xd_shop.controller
* @Project:xd_shop
* @name:BannerController
* @Date:2023/4/1 下午3:56
* @Filename:BannerController
* @Description:BannerController
* @Version:1.0
*/
@RestController
@RequestMapping("/api/v1/banner")
public class BannerController {
@Autowired
private BannerService bannerService;
@RequestMapping("/listAllBanner")
public JsonData listAllBanner(){
List<BannerDO> list = bannerService.listAllBanner();
return JsonData.buildSuccess(list );
}
@RequestMapping("/getAllbannerInfo")
public JsonData getAllbannerInfo(){
List<BannerDO> list = bannerService.getAllbannerInfo();
return JsonData.buildSuccess(list );
}
}
3. 启动项目,查看浏览器
- mybatis写法列出所有banner信息:http://localhost:8081/api/v1/banner/getAllbannerInfo
- mybatisplus写法列出所有banner信息:http://localhost:8081/api/v1/banner/listAllBanner
结论
可以观察到浏览器url地址和返回到json信息,得出最终结论,在项目中引入mybatisplus依赖,既可以写mybatisplus的接口,又可以写mybatis的接口。