这篇文章算是一个记录吧。我最近事比较多,然后可能会忘一些东西,所以写下来以后可以翻出来查看一下子
mybatis 调用<where> 和<if> 的时候需要在mapper里面传入一些参数 [email protected] 这个标签 不然测试时候会出现不能调用string这个参数的错误
话不多说开始上代码
// 模糊查询所有的帖子 (含通过和未通过的) List<MessPublish> findByTitle(@Param("title") String title); // 模糊查询所有未通过审核的帖子 List<MessPublish> findNotPassTitle(@Param("title") String title);
mapper文件
<!-- 模糊查询所有的帖子 (含通过和未通过的) --> <select id="findByTitle" parameterType="String" resultType="MessPublish"> select ID,Title,MessContent,CreateTime,TypeID,CorpID,UserName,UserID,ModifyTime,CheckState,CheckTime,CheckID,CheckRemark,MessFujian from Mes_publish <where> <if test="title!=null and title!='' "> and Title like '%'+#{title}+'%' </if> </where> </select> <!-- 模糊查询所有未通过的帖子 --> <select id="findNotPassTitle" parameterType="String" resultType="MessPublish"> select ID,Title,MessContent,CreateTime,TypeID,CorpID,UserName,UserID,ModifyTime,CheckState,CheckTime,CheckID,CheckRemark,MessFujian from Mes_publish <where> <if test="title!=null and title!='' "> and Title like '%'+#{title}+'%' </if> and checkState in (0,2); </where> </select>
接下来是 业务层的代码
//模糊查询所有的帖子(含通过未通过) List<MessPublish> findByTitle(String title); // 模糊查询所有未通过审核的帖子 List<MessPublish> findNotPassTitle(String title);
业务层实现层
// 模糊查询所有的帖子(含通过未通过) @Override public List<MessPublish> findByTitle(String title) { List<MessPublish> find = mapper.findByTitle(title); return find; } // 模糊查询所有未通过审核的帖子 @Override public List<MessPublish> findNotPassTitle(String title) { List<MessPublish> messPublish = mapper.findNotPassTitle(title); return messPublish; }
然后最后 在控制层 写入对象的方法即可。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/industrynews/13149.html