集成mybatis-plus,增加JsonResult返回值类型,增加service层

master
hanrenchun 1 year ago
parent f661c416da
commit b94f4a3e4e

@ -42,6 +42,11 @@
<version>2.3.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.3.0</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>

@ -4,6 +4,8 @@ import com.example.mybatisdemo.mapper.UserMapper;
import com.example.mybatisdemo.pojo.dto.UserDTO;
import com.example.mybatisdemo.pojo.entity.User;
import com.example.mybatisdemo.pojo.vo.UserVO;
import com.example.mybatisdemo.result.JsonResult;
import com.example.mybatisdemo.service.IUserService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -13,42 +15,31 @@ import org.springframework.web.bind.annotation.*;
public class UserController {
@Autowired
private UserMapper userMapper;
private IUserService iUserService;
@PostMapping("/addUser")
public String addUser(@RequestBody UserDTO userDTO){
User user = new User();
BeanUtils.copyProperties(userDTO,user);
int insert = userMapper.insert(user);
if (insert!=0){
return "添加成功";
}
return "添加失败";
public JsonResult addUser(@RequestBody UserDTO userDTO) {
return iUserService.insertUser(userDTO);
}
@GetMapping("/selectUser/{id}")
public UserVO selectUser(@PathVariable int id){
UserVO userVO = userMapper.selectById(id);
return userVO;
@PostMapping("/updateUser")
public JsonResult updateUser(@RequestBody UserDTO userDTO){
return iUserService.updateUser(userDTO);
}
@PostMapping("/update")
public String updateUser(@RequestBody UserDTO userDTO){
int i = userMapper.updateById(userDTO);
if (i!=0){
return "修改成功";
}
return "修改失败";
@PostMapping("/deleteUser")
public JsonResult deleteUser(@RequestBody UserDTO userDTO){
return iUserService.deleteUser(userDTO);
}
@PostMapping("/selectById")
public JsonResult selectUserById(@RequestBody UserDTO userDTO){
return iUserService.selectUserById(userDTO);
}
@GetMapping("delete/{id}")
public String deleteUser(@PathVariable int id){
int i = userMapper.deleteById(id);
if (i!=0){
return "删除成功";
}
return "删除失败";
@PostMapping("/selectByName")
public JsonResult selectByName(@RequestBody UserDTO userDTO){
return iUserService.selectUserByName(userDTO);
}
}

@ -1,14 +1,12 @@
package com.example.mybatisdemo.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.mybatisdemo.pojo.dto.UserDTO;
import com.example.mybatisdemo.pojo.entity.User;
import com.example.mybatisdemo.pojo.vo.UserVO;
import org.springframework.stereotype.Repository;
@Repository
public interface UserMapper extends BaseMapper<User> {
public interface UserMapper {
UserVO selectById(int id);
int insert(User user);
int updateById(UserDTO userDTO);
int deleteById(int id);
}

@ -2,8 +2,10 @@ package com.example.mybatisdemo.pojo.dto;
import lombok.Data;
import java.io.Serializable;
@Data
public class UserDTO {
public class UserDTO implements Serializable {
private Integer id;
private String name;
private Integer age;

@ -1,10 +1,16 @@
package com.example.mybatisdemo.pojo.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
@Data
public class User {
public class User implements Serializable {
@TableId(type = IdType.AUTO)
private Integer id;
private String name;
private Integer age;

@ -2,8 +2,10 @@ package com.example.mybatisdemo.pojo.vo;
import lombok.Data;
import java.io.Serializable;
@Data
public class UserVO {
public class UserVO implements Serializable {
private String name;
private Integer age;

@ -0,0 +1,14 @@
package com.example.mybatisdemo.repository;
import com.example.mybatisdemo.pojo.entity.User;
import com.example.mybatisdemo.pojo.vo.UserVO;
import java.util.List;
public interface IUserRepository {
int addUser(User user);
int deleteUserById(int id);
int updateUser(User user);
User selectById(int id);
List<User> selectByName(String name);
}

@ -0,0 +1,46 @@
package com.example.mybatisdemo.repository;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.example.mybatisdemo.mapper.UserMapper;
import com.example.mybatisdemo.pojo.entity.User;
import com.example.mybatisdemo.pojo.vo.UserVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public class UserRepository implements IUserRepository{
@Autowired
private UserMapper userMapper;
@Override
public int addUser(User user) {
return userMapper.insert(user);
}
@Override
public int deleteUserById(int id) {
return userMapper.deleteById(id);
}
@Override
public int updateUser(User user) {
return userMapper.updateById(user);
}
@Override
public User selectById(int id) {
return userMapper.selectById(id);
}
@Override
public List<User> selectByName(String name) {
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.eq("name", name);
return userMapper.selectList(wrapper);
}
}

@ -0,0 +1,30 @@
package com.example.mybatisdemo.result;
import lombok.Data;
@Data
public class JsonResult {
private String message;
private Object data;
public static JsonResult ok(){
return JsonResult.ok(null);
}
public static JsonResult ok(Object data) {
JsonResult jsonResult = new JsonResult();
jsonResult.message = "操作成功";
jsonResult.data = data;
return jsonResult;
}
public static JsonResult fail(){
JsonResult jsonResult = new JsonResult();
jsonResult.message = "操作失败";
return jsonResult;
}
}

@ -0,0 +1,12 @@
package com.example.mybatisdemo.service;
import com.example.mybatisdemo.pojo.dto.UserDTO;
import com.example.mybatisdemo.result.JsonResult;
public interface IUserService {
JsonResult insertUser(UserDTO userDTO);
JsonResult deleteUser(UserDTO userDTO);
JsonResult updateUser(UserDTO userDTO);
JsonResult selectUserById(UserDTO userDTO);
JsonResult selectUserByName(UserDTO userDTO);
}

@ -0,0 +1,54 @@
package com.example.mybatisdemo.service;
import com.example.mybatisdemo.pojo.dto.UserDTO;
import com.example.mybatisdemo.pojo.entity.User;
import com.example.mybatisdemo.repository.IUserRepository;
import com.example.mybatisdemo.result.JsonResult;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UserService implements IUserService{
@Autowired
private IUserRepository iUserRepository;
@Override
public JsonResult insertUser(UserDTO userDTO) {
User user = new User();
BeanUtils.copyProperties(userDTO,user);
int count = iUserRepository.addUser(user);
return (count!=0)?JsonResult.ok():JsonResult.fail();
}
@Override
public JsonResult deleteUser(UserDTO userDTO) {
int count = iUserRepository.deleteUserById(userDTO.getId());
return (count!=0)?JsonResult.ok():JsonResult.fail();
}
@Override
public JsonResult updateUser(UserDTO userDTO) {
User user = new User();
BeanUtils.copyProperties(userDTO,user);
int count = iUserRepository.updateUser(user);
return (count!=0)?JsonResult.ok():JsonResult.fail();
}
@Override
public JsonResult selectUserById(UserDTO userDTO) {
User user = iUserRepository.selectById(userDTO.getId());
return (user!=null)?JsonResult.ok(user):JsonResult.fail();
}
@Override
public JsonResult selectUserByName(UserDTO userDTO) {
List<User> users = iUserRepository.selectByName(userDTO.getName());
return (users!=null)?JsonResult.ok(users):JsonResult.fail();
}
}

@ -1,5 +1,4 @@
spring.datasource.url=jdbc:mysql://192.168.0.188:55306/bakljy
spring.datasource.username=root
spring.datasource.password=!QAZ1qaz
mybatis.mapper-locations=classpath:mappers/*.xml
mybatis-plus.mapper-locations=classpath:mappers/*.xml

@ -3,25 +3,5 @@
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace= "com.example.mybatisdemo.mapper.UserMapper">
<select id="selectById" resultType="com.example.mybatisdemo.pojo.vo.UserVO">
SELECT name,age
FROM user
WHERE id=#{id};
</select>
<insert id="insert">
INSERT INTO user(id, name, age)
VALUES (NULL,#{name},#{age})
</insert>
<update id="updateById">
UPDATE user SET
name = #{name},
age = #{age}
WHERE id = #{id}
</update>
<delete id="deleteById">
DELETE FROM user WHERE id = #{id}
</delete>
</mapper>

@ -1,5 +1,6 @@
package com.example.mybatisdemo;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.example.mybatisdemo.mapper.UserMapper;
import com.example.mybatisdemo.pojo.dto.UserDTO;
import com.example.mybatisdemo.pojo.entity.User;
@ -9,6 +10,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.List;
@SpringBootTest
class MybatisDemoApplicationTests {
@ -16,34 +19,42 @@ class MybatisDemoApplicationTests {
private UserMapper userMapper;
@Test
void selectByIdTest() {
UserVO userVO = userMapper.selectById(1);
System.out.println(userVO);
void insert(){
User user = new User();
user.setName("hanrenchun");
user.setAge(100);
int insert = userMapper.insert(user);
System.out.println("添加了"+insert+"条数据");
}
@Test
void insert(){
void update(){
User user = new User();
user.setId(27);
user.setName("hrc");
user.setAge(23);
int count = userMapper.insert(user);
System.out.println("添加了"+count+"条数据");
user.setAge(123);
int i = userMapper.updateById(user);
System.out.println("修改了"+i+"条数据");
}
@Test
void update(){
UserDTO userDTO = new UserDTO();
userDTO.setAge(18);
userDTO.setName("hanrenchun");
userDTO.setId(19);
int count = userMapper.updateById(userDTO);
System.out.println("修改了"+count+"条数据");
void select(){
User user = userMapper.selectById(27);
System.out.println(user);
}
@Test
void delete(){
int count = userMapper.deleteById(19);
System.out.println("删除了"+count+"条数据");
int i = userMapper.deleteById(28);
System.out.println("删除了"+i+"条数据");
}
@Test
void selectList(){
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.eq("name", "yu");
List<User> users = userMapper.selectList(wrapper);
System.out.println(users);
}
}

Loading…
Cancel
Save