首页 > 解决方案 > SqlProvider 重载

问题描述

sqlprovider可以重载吗

    @InsertProvider(type = MovieCatSqlProvider.class)
    int insertMovieCat(String movieId,String catId);

    @InsertProvider(type = MovieCatSqlProvider.class)
    int insertMovieCat(Movie movie,CatTag catTag);

     public String insertMovieCat(String movieId,String catId) {
            return new SQL(){{
                INSERT_INTO("movie_cat");
                VALUES("movie_id", "#{movieId}");
                VALUES("cat_id", "#{catId}");

            }}.toString();
        }

        public String insertMovieCat(Movie movie,CatTag catTag) {
            return new SQL(){{
                INSERT_INTO("movie_cat");
                VALUES("movie_id", "#{movie.movieId}");
                VALUES("cat_id", "#{catTag.catId}");

            }}.toString();
        }

例外是无法解析提供程序方法,因为在 SqlProvider 'top.curryguy.ossjava.dao.MovieCatDao$MovieCatSqlProvider' 中发现了多个 'insertMovieCat'。

我想重载方法

标签: mybatis

解决方案


目前不支持重载方法(版本 3.5.1)。
这是功能请求问题建议的修复


推荐阅读