关于使用MybatisPlus的问题

问题1

1、仅仅使用controller类文件与mapper接口实现basemapp,这俩文件就可以实现增删改查吗
2、如果可以使用那为什么中间还要去搭建service层呢

问题2

1、使用service有啥影响或者好处吗
2、如果的去使用service层呢

解决问题一

问题一解决过程


CeshiController类文件


@RestController
public class CeshiController {
    @Autowired
    StudentMapper studentMapper;

    @GetMapping("/xiaonan1")
    public void xiaonan1(){
        Student student=new Student(3,"3",3);
        studentMapper.insert(student);
    }
}

StudenMapper接口文件

@Mapper
public interface StudentMapper extends BaseMapper<Student> {
}

Studen的实体类文件

@Data
@AllArgsConstructor
public class Student {
    int s_id;
    String name;
    int age;
}

结果是肯定的,当然可以执行,并且实现简单的更删改查!,其实写到这里我也就迷糊了,既然这样可以,那为什么还需要弄service层呢,下来就继续下面的话题,用service层有什么好处

解决问题二

问题二解决过程


CeshiController类文件

@RestController
public class CeshiController {
    @Autowired
    TeacherMapper teacherMapper;

    @Autowired
    TecherService techerService;

    @GetMapping("/xiaonan2")
    public void xiaonan2(){
        Teacher teacher=new Teacher(111,"1");
        teacherMapper.insert(teacher);
    }

    @GetMapping("/xiaonan3")
    public void xiaonan3(){
        Teacher teacher=techerService.xiaonaninssert();
        techerService.save(teacher);

    }
}

Teacher实体类文件

@AllArgsConstructor
@Data
public class Teacher
{
    int t_id;
    String name;
}

Teacher的mapper接口

@Mapper
public interface TeacherMapper extends BaseMapper<Teacher> {
}

Teacher的service接口

public interface TecherService extends IService<Teacher> {
    Teacher xiaonaninssert();
}

Teacher的service接口实现

public interface TecherService extends IService<Teacher> {
@Service
public class TeacherServiceImpl extends ServiceImpl<TeacherMapper, Teacher> implements TecherService {
    @Override
     public Teacher xiaonaninssert() {
     Teacher teacher=new Teacher(333,"1111");
     return teacher;

    }
}
}

问题二

1、解决问题二的时候,很明显的发现我在测试类里面用俩种方法都测试了,答案都是肯定的,都可以达到实现目的,但是service对象没有insert方法,有save方法,mapper对象有insert方法但没有insert方法
2、其实到这里的时候我慢慢明白了,单纯的去完成增删改查仅仅一个mapper是可以实现增删改查的,但是在企业上班仅仅的mapper里面的方法是远远不够的,这也就是为什么要使用service了,一方是可以增加所需要的方法,另外一方面mapper里面有的方法,service也有,并且也完善了。

评论区
头像