Mybatis入门学习篇(三)之模糊查询的两种写法

在上一讲(Mybatis入门学习篇(二)之基于注解的增删改查)中,需要用到模糊查询,比如我想查找所有含有‘zjh‘的Student的信息。如果是在数据库中,那么我们可以方便的使用通配符%:select * from student where name like ‘%zjh%‘ 。但是如果在mybatis中直接像sql中那样,就会报错。遂百度,无果,偶然在一篇帖子中看到,遂记录下来,以备后用.

方法一: 在要查询的字符串合适位置加上%,如这里的‘zjh‘就应该为‘%zjh%‘。这是一个很管用的方法,也提醒我们当待查询字符串本身就含有‘%‘时,查询结果可能会出乎我们的意料.

方法二: 可以这样写查询语句:

@Select("select * from student where name like '%'||#{name}||'%'")
	@Result(javaType = Student.class)
	public List<Student> findByName(@Param("name") String name);
时间: 2024-12-15 01:50:44

Mybatis入门学习篇(三)之模糊查询的两种写法的相关文章

mybaties中,模糊查询的几种写法

模糊查询: 工作中用到,写三种用法吧,第四种为大小写匹配查询 1. sql中字符串拼接 SELECT * FROM tableName WHERE name LIKE CONCAT(CONCAT('%', #{text}), '%'); 2. 使用 ${...} 代替 #{...} SELECT * FROM tableName WHERE name LIKE '%${text}%'; 3. 程序中拼接    Java // or String searchText = "%" + t

MyBatis入门学习(三)

在实际开发中,我们希望文件配置是分类配置存放,需要的时候引入即可.如果多文件的配置混合配置使用,那么对项目的后期维护将增加难度. 一.对于连接数据库的配置单独放在一个properties文件中 1.对于之前的配置我们是将数据库配置放置在conf.xml文件中,如下: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//

oracle学习篇三:SQL查询

select * from emp; --1.找出部门30的员工select * from emp where deptno = 30; --2.列出所有办事员(CLERK)的姓名,变化和部门编号select * from emp where job = upper('clerk'); --3.找出佣金高于薪金的员工.select * from emp where comm > sal; --4.找出佣金高于薪金60%的员工.select * from emp where comm > sal

mybitis实现增,删,改,查,模糊查询的两种方式:(2)

方式二:mapper代理接口方式 这种方式只需要xml+接口(不用写实体类)但是需要符合三个规范 使用mapper'代理接口方式 在同一目录下(可以创建一个源文件夹,达到类文件和xml文件分类的作用) xml中namespace:命名空间为接口的全限定名(包名+类名) xml的文件名和接口的文件名相同,只是后缀名不同 接口中的方法名和xml中sql的id相同 1.创建一个java工程 2.将mysql的jar,mybatis的jar添加到构建路径中 3.写好配置文件 4.连接到数据库 5.写一个

JMeter学习(三)JMeter脚本的两种录制方式

---------------------------------------------------------------------------------------------------- 环境 Badboy  version 2.2 JDK: 1.8.0_25 Apache  JMeter-2.12 --------------------------------------------------------------------------------------------

MyBatis入门学习(二)

在MyBatis入门学习(一)中我们完成了对MyBatis简要的介绍以及简单的入门小项目测试,主要完成对一个用户信息的查询.这一节我们主要来简要的介绍MyBatis框架的增删改查操作,加深对该框架的了解.环境测试是上一节中的测试环境.在此感谢博主提供的资料. 一.通过MyBatis持久层框架完成对数据库表的增删改查操作——基于XML的实现 1.定义sql文件的映射文件,userMapper文件内容如下: <?xml version="1.0" encoding="UTF

Mybatis中mapper.xml中的模糊查询

Mybatis中mapper.xml中的模糊查询 <!-- 方法一: 直接使用 % 拼接字符串 注意:此处不能写成 "%#{name}%" ,#{name}就成了字符串的一部分, 会发生这样一个异常: The error occurred while setting parameters, 应该写成: "%"#{name}"%",即#{name}是一个整体,前后加上% --> <if test="name != nul

mysql进阶 六 模糊查询的四种用法介绍

mysql中模糊查询的四种用法介绍 这篇文章主要介绍了mysql中模糊查询的四种用法,需要的朋友可以参考下. 下面介绍mysql中模糊查询的四种用法: 1%: 表示任意0个或多个字符.可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示. 比如 SELECT * FROM [user] WHERE u_name LIKE '%三%' 将会把u_name为“张三”,“张猫三”.“三脚猫”,“唐三藏”等等有“三”的记录全找出来. 另外,如果需要找出u_name中既有“三”又有

模糊查询的四种方法

下面介绍模糊查询的四种用法: 1,%:表示任意0个或多个字符.可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示. 比如 SELECT * FROM [user] WHERE u_name LIKE '%三%' 将会把u_name为“张三”,“张猫三”.“三脚猫”,“唐三藏”等等有“三”的记录全找出来. 另外,如果需要找出u_name中既有“三”又有“猫”的记录,请使用and条件 SELECT * FROM [user] WHERE u_name LIKE '%三%'