1.首先maven 引入
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.1.2</version>
</dependency>
2.(略去DataSouce 配置 自行解决)开启SQL打印
# 配置slq打印日志
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
3.书写Mapper 空接口(扫描注意了)
@Component
public interface UserMapper extends BaseMapper<User> {
}
4. service 调用:
package com.example.mplus.mps;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UseService {
@Autowired
private UserMapper userMapper;
private Logger logger = LoggerFactory.getLogger(UseService.class);
public List<User> getAll() {
return userMapper.selectList(null);
}
public int save(User user) {
return userMapper.insert(user);
}
public int update(User user) {
return userMapper.updateById(user);
}
public int update1(int id, String name) {
UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
User user = new User();
user.setUsername(name);
//修改的条件
updateWrapper.eq("id", id);
return userMapper.update(user, updateWrapper);
}
public int deleteById(int id) {
return userMapper.deleteById(id);
}
public int deletewhithIf(int startId, int endId) {
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.gt("id", startId);
wrapper.le("id", endId);
logger.info("sql", wrapper.getSqlSegment());
return userMapper.delete(wrapper);
}
public List<User> getAllByPage(int index, int pageSize) {
if (index == 0) {
index = 1;
}
Page<User> page = new Page<>(index, pageSize);
QueryWrapper<User> quire = new QueryWrapper<>();
quire.between("id", "1013", "1020");
logger.info("sql:" + quire.getSqlSegment());
userMapper.selectPage(page, quire);
List<User> records = page.getRecords();
return records;
}
}
5.调用
package com.example.mplus.mps;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
public class UserControl {
@Autowired
private UseService useService;
private Logger logger = LoggerFactory.getLogger(UserControl.class);
@RequestMapping(value = "/select")
public List<User> getAll() {
logger.info("查询个数:" + useService.getAll().size());
return useService.getAll();
}
@RequestMapping(value = "/select/{index}/{pageSize}")
public List<User> getAllByPage(@PathVariable int index, @PathVariable int pageSize) {
int size = useService.getAllByPage(index, pageSize).size();
logger.info("查询个数:" + size);
return useService.getAllByPage(index, pageSize);
}
@RequestMapping(value = "/add/{username}/{address}/{pwd}/{id}")
public ResponseEntity add(@PathVariable String username, @PathVariable String address, @PathVariable String pwd, @PathVariable int id) {
ResponseBean responseBean = new ResponseBean();
User user = new User();
user.setId(id);
user.setAddress(address);
user.setPwd(pwd);
user.setUsername(username);
int updateCount = useService.save(user);
if (updateCount > 0) {
responseBean.setCode(200);
responseBean.setMsg("保存成功");
responseBean.setUser(user);
} else {
responseBean.setCode(201);
responseBean.setMsg("保存不成功");
}
logger.info("添加个数:" + updateCount);
return ResponseEntity.ok(responseBean);
}
@RequestMapping(value = "/update/{id}/{name}/{pwd}")
public ResponseEntity update(@PathVariable int id, @PathVariable String name, @PathVariable(required = false) String pwd) {
ResponseBean responseBean = new ResponseBean();
User user = new User();
user.setId(id);
user.setUsername(name);
if (!StringUtils.isEmpty(pwd)) {
user.setPwd(pwd);
}
int updateCount = useService.update(user);
if (updateCount > 0) {
responseBean.setCode(200);
responseBean.setMsg("修改成功");
responseBean.setUser(user);
} else {
responseBean.setCode(201);
responseBean.setMsg("修改不成功");
}
logger.info("修改个数:" + updateCount);
return ResponseEntity.ok(responseBean);
}
@RequestMapping(value = "/delete/{id}")
public ResponseEntity delteById(@PathVariable int id) {
ResponseBean responseBean = new ResponseBean();
int updateCount = useService.deleteById(id);
if (updateCount > 0) {
responseBean.setCode(200);
responseBean.setMsg("删除成功");
} else {
responseBean.setCode(201);
responseBean.setMsg("删除不成功");
}
logger.info("删除个数:" + updateCount);
return ResponseEntity.ok(responseBean);
}
@RequestMapping(value = "/delete1/{indexId}/{endId}")
public ResponseEntity delteWithif(@PathVariable int indexId, @PathVariable int endId) {
ResponseBean responseBean = new ResponseBean();
int updateCount = useService.deletewhithIf(indexId, endId);
if (updateCount > 0) {
responseBean.setCode(200);
responseBean.setMsg("删除成功");
} else {
responseBean.setCode(201);
responseBean.setMsg("删除不成功");
}
logger.info("删除个数:" + updateCount);
return ResponseEntity.ok(responseBean);
}
@RequestMapping(value = "/update1/{id}/{name}")
public ResponseEntity update1(@PathVariable String name, @PathVariable int id) {
ResponseBean responseBean = new ResponseBean();
int updateCount = useService.update1(id, name);
if (updateCount > 0) {
responseBean.setCode(200);
responseBean.setMsg("修改成功");
} else {
responseBean.setCode(201);
responseBean.setMsg("修改不成功");
}
logger.info("修改个数:" + updateCount);
return ResponseEntity.ok(responseBean);
}
}
5.分页插件注入 启动类或者Config 配置类自己懂得
@Bean
public PaginationInterceptor paginationInterceptor() {
return new PaginationInterceptor();
}