zoukankan      html  css  js  c++  java
  • 【MyBatis】学习笔记003map与模糊查询

    1.map

    在进行CRUD需要传入多个参数时,一般有两种方式解决

    (1)利用pojo对象,例如User对象

    new 一个User对象,然后通过set方法赋值参数,再传入User对象

    User user = new User();
    user.setId("1");
    user.setName("aircl");

    (2)利用map

    Map<String,Object> map = new HashMap<String,Object>;
    map.put("id",1);
    map.put("name","aircl");
    <update id="updateUser" parameterType="map">
      update user set name = #{name} where id = #{id}
    </update>

    (3)比较

    在User属性数量少的情况下,使用User进行参数传入和map效果一致,但是当User属性个数庞大时,map效果更加

    2.模糊查询

    模糊查询在实际开发中使用场景很多,mybatis有两种方式

    (1)在java代码中添加“%”

    String name = "%张%";
    List<User> users = userDao.selectLike(name);
    <select id="selectLike" resultType="com.aircl.pojo.User" parameterType="String">
      select * from user where name like #{name}
    </select>

    (2)在Mapper中添加“%”

    String name = "张";
    List<User> users = userDao.selectLike(name);
    <select id="selectLike" resultType="com.aircl.pojo.User" parameterType="String">
      select * from user where name like "%"#{name}"%"
    </select>

    (3)比较

    推荐使用第一种方式,能够有效防止SQL注入

  • 相关阅读:
    无题
    赌对了
    赌:
    这次是真的再见了,oi退役回忆录
    线段树(lazy标记)
    《挑战》2.1 POJ POJ 1979 Red and Black (简单的DFS)
    《挑战》2.1 POJ 2386 Lake Counting (简单的dfs)
    TC安装全系列教程
    ProblemC 剪花布条(KMP基础)
    多校+CF简单题
  • 原文地址:https://www.cnblogs.com/AirCL/p/14330530.html
Copyright © 2011-2022 走看看