使用Mybatis通用Mapper接口导出数据库视图(单表数据)的实现

本文介绍了如何使用Mybatis通用Mapper接口来导出数据库中的单表视图数据。通过自定义泛型mapper接口和查询模板类,模块mapper可轻松调用相关接口实现数据导出。详细步骤及接口文档链接见正文。

1.自定义mapper接口(泛型)

public interface SelectMapMapper{
    @SelectProvider(type = MySelectProvider.class, method = "dynamicSQL")
    List<Map> selectAllWithMap(String tableName);
}

2.自定义查询模板类

public class MySelectProvider extends MapperTemplate{
    public MySelectProvider(Class<?> mapperClass, MapperHelper mapperHelper) {
        super(mapperClass, mapperHelper);
    }

    public String selectAllWithMap(MappedStatement ms) {
        StringBuilder sql = new StringBuilder();
        sql.append("select * from  ");
        String str="${@com.xxx.common.mybatis.ognl.GetTableName@getName(value)}\n";//匹配正则方法 
        sql.append(str);
        String string=sql.toString();
        return string;
    }
}

3.模块mapper继承自定义mapper接口,即可调用

public interface ViewExportMapper extends SelectMapMapper{}

[接口文档]

https://mapperhelper.github.io/all/
https://blog.youkuaiyun.com/shadowsick/article/details/53664829
http://blog.tingyun.com/web/article/detail/1188

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值