1. 在mapper文件中配置SQL
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-////DTD Mapper 3.0//EN" "/dtd/">
<mapper namespace="">
<select resultType="FinanceRefundApplyModel" parameterType="String">
select * from FINANCE_REFUND_APPLY where ID = #{id}
</select>
</mapper>
2. 注解式的SQL定义
public interface UserMapper {
@Select("select * from user ")
List<User> AnnotationGetUserList();
}
如果想要的是动态SQL,那么就加上<script>:
public interface UserMapper {
@Select("select * from user ")
List<User> AnnotationGetUserList();
@Select("<script>"
+ "select * from user "
+ "<if test='id!=null'>"
+ "where id=#{id}"
+ "</if>"
+ "</script>")
List<User> AnnotationGetUserById(@Param("id")String id);
}
3.通过@SelectProvider来声明sql提供类
public interface UserMapper {
@SelectProvider(type=,method="getUserById")
List<User> AnnotationProviderGetUserById(String id);
}
public class SqlProvider {
public String getUserById(String id) {
String sql = "select * from user ";
if (id!=null) {
sql += " where id="+id;
}
return sql;
}
}