@Mapper public interface PersonInfoMapper { //如果一个参数 直接用#{参数名} 就可以 @Select("select * from table pi WHERE pi.ID = #{id}") PersonInfo selectByPrimaryKey(String id); @Select("select * from table pi WHERE pi.local_store_Datetime >= #{localStoreDatetime} ") List<PersonInfo> selectByBeginDate(Date localStoreDatetime); @Select("select * from table pi WHERE pi.local_store_Datetime <= #{localStoreDatetime} ") List<PersonInfo> selectByEndDate(Date localStoreDatetime);
//如果多个个参数 可以用${param1} 需要注意参数顺序 或者下面@Select("select * from table pi WHERE pi.local_store_Datetime >= to_date('${param1}','yyyy-MM-dd HH24:mi:ss')" +
" and pi.local_store_Datetime <= to_date('${param2}','yyyy-MM-dd HH24:mi:ss')") List<PersonInfo> selectByBeginAndEnd(String beginDate , String endDate) ; // script 标签 &( 逻辑与 ) & <( 小于 ) < >( 大于 ) > "( 双引号 ) " '( 单引号 ) '
//多个参数 还可以 如下 在参数列表中增加@Param注解 用${param中的名字} 获取数据 如果需要判断 在字符串中首尾增加
<script>标签@Select( "<script>" + select + " WHERE 1 = 1 " + "<if test='beginDate!=null'>" + "AND PI.local_store_Datetime >= to_date('${beginDate}','yyyy-MM-dd HH24:mi:ss') " + "</if>" + "<if test='endDate!=null'>" + "AND PI.local_store_Datetime <= to_date('${endDate}','yyyy-MM-dd HH24:mi:ss') " + "</if>" + "</script>") List<PersonInfo> selectByBeginDateAndEndDate( @Param( "beginDate") String beginDate , @Param( "endDate")String endDate) ;}