package ${package}.dao;
import ${package}.domain.${className}DO;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
/**
* ${comments}
*
* @author ${author}
* @email ${email}
* @date ${datetime}
*/
@Mapper
public interface ${className}Mapper {
@Select("select #foreach($column in $columns)
`$column.columnName`#if($velocityCount != $columns.size()), #end
#end from ${tableName} where ${pk.columnName} = #{id}")
${className}DO get(${pk.javaType} ${pk.attrname});
@Select("")
List<${className}DO> list(Map map);
@Select("")
int count(Map map);
@Insert("insert into ${tableName} (#foreach($column in $columns)
#if($column.columnName != $pk.columnName || $pk.extra != 'auto_increment')
`$column.columnName`#if($velocityCount != $columns.size()), #end
#end
#end)"
+ "values (#foreach($column in $columns)
#if($column.columnName != $pk.columnName || $pk.extra != 'auto_increment')
#{$column.attrname}#if($velocityCount != $columns.size()), #end
#end
#end)")
int save(${className}DO ${classname});
int saveSelective(${className}DO ${classname});
@Update("")
int update(${className}DO ${classname});
@Delete("delete from ${tableName} where ${pk.columnName} =#{${pk.attrname}}")
int remove(${pk.javaType} ${pk.columnName});
@Delete("")
int batchRemove(${pk.javaType}[] ${pk.attrname}s);
}