码迷,mamicode.com
首页 > 数据库 > 详细

动态SQL之模糊查询

时间:2016-06-10 13:45:31      阅读:574      评论:0      收藏:0      [点我收藏+]

标签:

模糊查询学习了三种:

DAO层

// 可以使用
List<User> wherelike01(String user_name);

// 忘记
List<User> wherelike02(Map<String, Object> map);

// 推荐使用
List<User> wherelike03(String user_name)

测试类

 

@Test
    public void where语句测试01() {
        SqlSession sqlSession = null;
        try {
            sqlSession = MyBatisUtils.getSqlSession();
            sqlSession.getMapper(UserDao.class).wherelike01("宋%");
        } catch (Exception e) {
            logger.debug(e.getMessage());
            throw new RuntimeException(e.getMessage());
        } finally {
            MyBatisUtils.closeSqlSession(sqlSession);
        }
    }
@Test
    public void where语句测试02$() {
        SqlSession sqlSession = null;
        try {
            Map<String, Object> map = new HashMap<String, Object>();
            map.put("account", "宋");
            sqlSession = MyBatisUtils.getSqlSession();
            sqlSession.getMapper(UserDao.class).wherelike02(map);
        } catch (Exception e) {
            logger.debug(e.getMessage());
            throw new RuntimeException(e.getMessage());
        } finally {
            MyBatisUtils.closeSqlSession(sqlSession);
        }
    }
@Test
public void where语句测试03推荐() {
  SqlSession sqlSession = null;
  try {
    sqlSession = MyBatisUtils.getSqlSession();
    sqlSession.getMapper(UserDao.class).wherelike03("宋");
    } catch (Exception e) {
      logger.debug(e.getMessage());
      throw new RuntimeException(e.getMessage());
    } finally {
      MyBatisUtils.closeSqlSession(sqlSession);
    }
}

Mapper中 

<mapper namespace="com.shxt.dao.UserDao">
       <select id="wherelike01" parameterType="string" resultType="com.shxt.model.User">
         SELECT
            *
        FROM
            USER
        WHERE
            user_name LIKE #{user_name}
       </select>
        <select id="wherelike02" parameterType="map" resultType="com.shxt.model.User">
           SELECT
                *
            FROM
                USER
            WHERE
                user_name LIKE ‘${user_name}%‘
       </select>
         <select id="wherelike03" parameterType="string" resultType="com.shxt.model.User">
           SELECT
                *
            FROM
                USER
            WHERE
                user_name LIKE CONCAT(#{user_name}, ‘%‘)
       </select>
</mapper>

  

动态SQL之模糊查询

标签:

原文地址:http://www.cnblogs.com/blogofcookie/p/5573560.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!