我想知道是否有任何方法可以使Mybatis
接口返回不同的类。
我正在使用@SelectProvider
来创建sql;
就像下一个:
public interface DaoTemplate<T extends Common> {
@SelectProvider(method = "findById", type = DaoTemplateImpl.class)
public T findfindById(T bean);
}
答案 0 :(得分:0)
据我所知,这看起来像是我为我的应用做的事情:
我已经定义了一个通用的通用映射器接口:
public interface DataMapper<F, D> {
List<D> list(@Param("filter") F filter);
D getById(@Param("filter") F filter);
然后“具体”映射器不需要声明方法:
public interface OrderMapper extends DataMapper<OrderFilter, OrderDto> {}
但SQL是在XML文件中定义的(每个具体映射器都是1),无法在@Select
或@SelectProvider
注释中完成,因为SQL必须针对每种类型进行更改,并且不能使用变量因为在编译时解析了注释属性值。