(22)MyBatis的动态SQL:bind元素

370人浏览 / 0人评论

bind元素可以从OGNL表达式中创建一个变量并将其绑定到上下文。


SELECT * EROM tb_employee
WHERE loginname LIKE #{pattern}

// 根据传入的参数进行模糊查询
List selectEmployeeLikeName(Employee employee);

public void testSelectEmployeeLikeName(SqlSession session) {
EmployeeMapper em = session.getMapper(EmployeeMapper.class) ;
Employee employee = new Employee();
// 设置模糊查询的参数
employee.setName("o") ;
List list = em.selectEmployeeLikeName(employee) ;
System.out.println(list);
}
测试selectEmployeeLikeNtme方法,控制台显示如下:
DEBUG [main]==> Preparing: SELECT * FROM tb_ employee WHERE loginname LIKE ?
DEBUG [main]==> Parameters :%o%(String)
DEBUG [main]==> Total :2
Employee [id=2,loginname=rose,password=123456,name=露丝,sex=女,age=21,phone=13902018888,sal=6800.0,state=ACTIVE]
Employee [id=3,loginname=tom,password=123456,name=汤姆,sex=男,age=25,phone=13902017777,sal=8800.0,state=ACTIVE]
可以看到,执行的sql语句是一个like模糊查询语句,返回的是“loginname”包含“o”的所有数据。

全部评论

晴天下起了小雨
2017-10-01 18:00
很喜欢,果断关注了
wjmyly7336064
2017-10-01 18:00
相当实用,赞美了
橘大佬
2017-10-01 18:00
就是有些细节再到位点就好了…