【SpringBoot教程】SpringBoot 快速整合Mybatis(去XML化+通用Service)

作者简介:大家好,我是撸代码的羊驼,前阿里巴巴架构师,现某互联网公司CTO

联系v:sulny_ann(17362204968),加我进群,大家一起学习,一起进步,一起对抗互联
网寒冬

# 具体步骤

得益于Spring4的新特性,我们可以使用@Autowired注入泛型依赖。

# 通用Mapper

在MyBatis项目中,引入通用Mapper的依赖,其他配置不变。
 

        <dependency>             <groupId>tk.mybatis</groupId>            <artifactId>mapper-spring-boot-starter</artifactId>            <version>1.1.4</version>        </dependency>

# 通用Service

BaseService可以根据实际需求来添加常用的CURD接口方法,例如:​​​​​​​

package com.hehe.tools;
public class BaseServiceImpl<T> implements BaseService<T> {
    @Autowired    private Mapper<T> mapper;//泛型装配
    @Override    public List<T> list(T entity) {        return mapper.select(entity);    }
    @Override    public T get(T entity) {        return  mapper.selectOne(entity);    }
    @Override    public int update(T entity) {        return mapper.updateByPrimaryKeySelective(entity);    }
    @Override    public int save(T entity) {        return mapper.insertSelective(entity);    }
    @Override    public int delete(T entity) {        return mapper.deleteByPrimaryKey(entity);    }}
 

# 使用方法

在Mapper接口继承通用Mapper并指定泛型,如下:​​​​​​​
 

public interface UserMapper extends Mapper<User> {}

在Service实现类继承通用Service,如下:​​​​​​​

@Servicepublic class UserServiceImpl extends BaseServiceImpl<User> implements UserService {
}

最后在Controller 提供RestFul API,如下:

​​​​​​​

@RestController@RequestMapping("/user/*")public class UserController {
    @Autowired    UserService userService;
    @RequestMapping("list")    public List<User> list(User user) {        return userService.list(user);    }
    @RequestMapping("get")    public User get(User user) {        return userService.get(user);    }
    @RequestMapping("update")    public int update(User user) {        return userService.update(user);    }
    @RequestMapping("save")    public int save(User user) {        return userService.save(user);    }
    @RequestMapping("delete")    public int delete(User user) {        return userService.delete(user);    }
}

                
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值