首页 > 其他分享 >springboot框架中service层抽取增删改查并封装

springboot框架中service层抽取增删改查并封装

时间:2022-11-14 18:12:01浏览次数:42  
标签:mapper return springboot service java baseMapper 改查 import public

1、BaseService.java

import catl.mapper.BaseMapper;
import tk.mybatis.mapper.entity.Example;

import javax.annotation.Resource;
import java.util.Collections;
import java.util.List;

public abstract class BaseService<T, Id>{

@Resource
BaseMapper baseMapper;

public int save(T t) {
return baseMapper.insertSelective(t);
}


public int saveAll(List<T> list) {
return baseMapper.insertList(list);
}

public int delete(T t) {
return baseMapper.delete(t);
}


public int deleteById(Id id) {
return baseMapper.deleteByPrimaryKey(id);
}


public int update(T t) {
return baseMapper.updateByPrimaryKey(t);
}


public T getById(Id id) {
return (T) baseMapper.selectByPrimaryKey(id);
}


public List<T> getAll() {
return baseMapper.selectAll();
}

public List<T> searchByExample(Example example) {
return Collections.emptyList();
}
}
2、BaseMapper.java
import tk.mybatis.mapper.common.Mapper;
import tk.mybatis.mapper.common.special.InsertListMapper;

public interface BaseMapper<T> extends Mapper<T>, InsertListMapper<T> {

}
3、UserMapper.java
import catl.dao.User;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface UserMapper extends BaseMapper<User>{
}

4、UserService.java
import catl.dao.User;
import org.springframework.stereotype.Service;
@Service
public class UserService extends BaseService<User,String> {

}
5、TestController.java
@Autowired
private UserService userService;

@GetMapping("/test")
@ApiOperation(value = "测试接口", httpMethod = "GET")
public RetInfo test(){
User user = new User();
user.setId("222323");
user.setName("ceshi");
userService.save(user);

return RetInfo.success("新增成功");
}
6、pom文件
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper-spring-boot-starter</artifactId>
<version>2.0.0</version>
</dependency>

标签:mapper,return,springboot,service,java,baseMapper,改查,import,public
From: https://www.cnblogs.com/hjwbkcom/p/16889877.html

相关文章

  • springboot整合kafka
    maven配置:<properties><java.version>1.8</java.version><oracle.version>11.2.0.4</oracle.version></properties><!--kafka--><dependency>......
  • SpringBoot 05: 接口架构风格 + RESTful接口风格
    接口定义API(ApplicationProgrammingInterface,应用程序接口)是一些预先定义的接口(如函数、HTTP接口,或指软件系统不同组成部分衔接的约定)是用来提供应用程序与开......
  • Android Service学习之AIDL, Parcelable和远程服务
    AIDL的作用由于每个应用程序都运行在自己的进程空间,并且可以从应用程序UI运行另一个服务进程,而且经常会在不同的进程间传递对象。在Android平台,一个进程通常不能访问另......
  • rocketMq springboot2 发送广播消息
    广播消息:一个点发送,所有有监听订阅的程序都能收到消息。应用场景:一个配置更新了,其他点都需要知道配置更新需加载。 mq创建主要是创建组时与队列有点区别mqadminup......
  • rocketMq springboot2 发送有序消息
    有序消息:所有信息往mq中,在broker.conf配置文件中指定产生队列数量。如果是普通队列时,所有消息,会分发到默认队列的各个队列中。是无序的。有序则是,所有消息发送,都指定一个......
  • Failed to check the status of the service XXX.XXX. No provider available for the
    TheDubboConsumerCANNOTFIND service 1.检查消费者端配置version是否和提供者一致,有时候你消费者配置version="*"也是不行的2.检查group分组,如果有分组,则检查消......
  • mongodb增删改查 及批量操作(二)
    1.增加insert插入多笔数据db.stu.insert([{_id:3,sn:'003',name:'zhangfei'},{_id:4,sn:'004',name:'guanyu'},{sn:'005',name:'liubei'}])增加复杂的文档db.stu.insert({na......
  • rocketMq springboot2接入配置
    rocketmq的接入配置。 引入jar包<dependency><groupId>org.apache.rocketmq</groupId><artifactId>rocketmq-spring-boot-starter</artifactId></dependen......
  • 外网访问内网SpringBoot【免费内网穿透】
    在本地搭建的SpringBoot项目,在内网能够正常访问,想要在外网环境下也能够访问,可以做内网穿透来实现,不需要公网IP,也不需要进入到路由器配置。这里主要介绍通过cpolar内网穿透......
  • basemapper与Iservice
    在basemapper中是直接使用接口的方式继承basemapper的接口的,  然后直接使用UserMapper调用方法,实现由mybatis-plus提供,但是只是提供的单表查询的方法,多表查询需要自......