BaseMapper.java
import tk.mybatis.mapper.common.Mapper;
import tk.mybatis.mapper.common.MySqlMapper;
public interface BaseMapper<T> extends Mapper<T>, MySqlMapper<T> {
}
1 、Mapper.java
package tk.mybatis.mapper.common;
public interface Mapper<T> extends
BaseMapper<T>,
ExampleMapper<T>,
RowBoundsMapper<T>,
Marker {
}
1.1 BaseMapper.java
package tk.mybatis.mapper.common
import tk.mybatis.mapper.common.base.BaseDeleteMapper
import tk.mybatis.mapper.common.base.BaseInsertMapper
import tk.mybatis.mapper.common.base.BaseSelectMapper
import tk.mybatis.mapper.common.base.BaseUpdateMapper
public interface BaseMapper<T> extends
BaseSelectMapper<T>,
BaseInsertMapper<T>,
BaseUpdateMapper<T>,
BaseDeleteMapper<T> {
}
1.1.1 BaseSelectMapper.java
package tk.mybatis.mapper.common.base;
import tk.mybatis.mapper.common.base.select.*;
public interface BaseSelectMapper<T> extends
SelectOneMapper<T>,
SelectMapper<T>,
SelectAllMapper<T>,
SelectCountMapper<T>,
SelectByPrimaryKeyMapper<T>,
ExistsWithPrimaryKeyMapper<T> {
}
1.1.1.1 SelectOneMapper.java
package tk.mybatis.mapper.common.base.select;
import org.apache.ibatis.annotations.SelectProvider;
import tk.mybatis.mapper.provider.base.BaseSelectProvider;
/**
* 通用Mapper接口,查询
*
* @param <T> 不能为空
* @author liuzh
*/
public interface SelectOneMapper<T> {
/**
* 根据实体中的属性进行查询,只能有一个返回值,有多个结果是抛出异常,查询条件使用等号
*
* @param record
* @return
*/
@SelectProvider(type = BaseSelectProvider.class, method = "dynamicSQL")
T selectOne(T record);
}
1.1.1.2 SelectMapper.java
package tk.mybatis.mapper.common.base.select;
import org.apache.ibatis.annotations.SelectProvider;
import tk.mybatis.mapper.provider.base.BaseSelectProvider;
import java.util.List;
/**
* 通用Mapper接口,查询
*
* @param <T> 不能为空
* @author liuzh
*/
public interface SelectMapper<T> {
/**
* 根据实体中的属性值进行查询,查询条件使用等号
*
* @param record
* @return
*/
@SelectProvider(type = BaseSelectProvider.class, method = "dynamicSQL")
List<T> select(T record);
}
1.1.1.3 SelectAllMapper.java