MyBatis实现动态查询、模糊查询功能

时间:2022-11-17 16:59:23

要实现查询,咱们就先有个数据库,截图如下,其中cityareaid是外键,本次可以忽略;

MyBatis实现动态查询、模糊查询功能

下面branches是我的实体类,里面有name和address属性;

接口中方法:

?
1
2
public list<branches> findongtai(@param("name")string name,@param("add")string address);//动态
public list<branches> findlike(@param("name")string name,@param("add")string address);//模糊

mybatis的接口映射文件的代码:

动态查询:

?
1
2
3
4
5
6
7
8
9
<select id="findongtai" resulttype="com.wj.entity.branches" >
    select * from branches where 1=1
    <if test="name!=''and name!=null">
     and name =#{name}
    </if>
    <if test="add!=''and add!=null">
     and address =#{add}
    </if>
   </select>

模糊查询:

?
1
2
3
<select id="findlike" resulttype="com.wj.entity.branches" >
   select * from branches where name like "%"#{name}"%" and address like "%"#{add}"%"
 </select>

然后就是main方法实现了:

?
1
2
3
4
5
6
7
8
list<branches> list=new branchesimpl().findongtai("建设银行", "");
 for (branches branches : list) {
  system.out.println("名称:"+branches.getname()+"\t---\t地址:"+branches.getaddress());
 }
list<branches> list=new branchesimpl().findlike("支行", "路");
 for (branches branches : list) {
  system.out.println("名称:"+branches.getname()+"\t---\t地址:"+branches.getaddress());
 }

结果就是。。。

动态查询:

MyBatis实现动态查询、模糊查询功能

模糊查询:

MyBatis实现动态查询、模糊查询功能

总结

以上所述是小编给大家介绍的mybatis实现动态查询、模糊查询功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

原文链接:https://blog.csdn.net/AngleFlyyy/article/details/80578612