动态SQL之模糊查询
模糊查询学习了三种:
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之模糊查询的更多相关文章
- 动态SQL与模糊查询
一: 1.需求 实现多条件查询用户(姓名模糊查询,年龄在指定的最小值与最大值之间) 2.结构目录 3.准备数据与建表 CREATE TABLE d_user( id int PRIMARY KEY A ...
- mybatis的动态sql及模糊查询
1.动态sql 使用类似于jstl表达式来实现 2.模糊查找 用一个对象来封装条件 步骤: 1)新建一个条件实体 package com.hy.mybatis.entity; public class ...
- MyBatis动态SQL与模糊查询
sqlxml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC & ...
- mybatis 动态Sql的模糊查询
where teacher.tname like concat(concat(#{tName}),'%') 2:distinct的使用 下面先来看看例子: table id name 1 ...
- Mybatis中动态SQL多条件查询
Mybatis中动态SQL多条件查询 mybatis中用于实现动态SQL的元素有: if:用if实现条件的选择,用于定义where的字句的条件. choose(when otherwise)相当于Ja ...
- Sql语句模糊查询字符串的两种写法
Sql语句模糊查询有两种写法,一种是在jdbcTemplate的查询方法参数里拼接字符串%,一种是在Sql语句里拼接%字符串. public class IsNameDaoImpl implement ...
- JAVAEE——Mybatis第二天:输入和输出映射、动态sql、关联查询、Mybatis整合spring、Mybatis逆向工程
1. 学习计划 1.输入映射和输出映射 a) 输入参数映射 b) 返回值映射 2.动态sql a) If标签 b) Where标签 c) Sql片段 d) Foreach标签 3.关联查询 a) 一对 ...
- SQL like 模糊查询
SQL 模糊查询 在进行数据库查询时,有完整查询和模糊查询之分. 一般模糊查询语句如下: SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条件,SQL提供了四种匹配模式: ...
- sql server 2008有关SQL的模糊查询
执行 数据库查询时,有完整查询和模糊查询之分. 一般模糊语句如下: SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条件,SQL提供了四种匹配模式: 1,%:表示任意0个 ...
随机推荐
- TypeError: Cannot read property 'splice' of undefined
splice是删除数组里的项,报这个错证明你点前面那个并不是个数组,仔细一看,还真是数组名称写错了
- Java 指令重排
Java 指令重排 java 指令重排 package com.feshfans; /** * 用来演示指令重排 * 指令重排会发生在两个阶段: * 1. 编译期(jvm 加载字节码时) * 2. c ...
- python-进程、线程与协程
基础概念 进程 是一个执行中的程序,即将程序装载到内存中,系统为它分配资源的这一过程.进程是操作系统资源分配的基本单位. 每一个进程都有它自己的地址空间,一般情况下,包括文本区域(text regio ...
- JavaScript精进篇
JavaScript是所有前端框架中最基础的框架,在工作了两年以后又重新回到了这里.过去两年里用的最多的前端框架是jquery,因为它简单易上手,而jquery就是封装了JavaScript.重新系统 ...
- UVALive 3211 : Now or later 【2-SAT】
题目链接 题意及题解参见lrj训练指南 #include<bits/stdc++.h> using namespace std; ; struct TwoSAT { int n; vect ...
- IDC装机检查思路
交换机网口 网线 配线架 服务器网口灯 系统网卡驱动
- PHP入门培训教程 PHP变量及常量
一.PHP5.4的基本语法格式 1.PHP的分割符 $php=true; //分号结束语句 if($php){ echo "真"; //分号结束语句 } //大括号结束语 ...
- java 上传大文件以及文件夹
我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用. 这次项目的需求: 支持大文件的上传和续传,要求续传支持所有浏览器,包括ie6,ie7,i ...
- HDU 2923 Relocation(状压dp+01背包)
题目代号:HDU2923 题目链接:http://poj.org/problem?id=2923 Relocation Time Limit: 1000MS Memory Limit: 65536K ...
- json根据一个值返回对象,filter方法使用
d = { "student":[ { "count":1000, "stuList":[ ...