mybatis04 根据用户名称模糊查询用户信息
2015-10-11 11:09
337 查看
根据用户名称模糊查询用户信息可能返回多条记录。
1.1.1User.xml
编码
如果用%进行模糊查询,#{}表示一个占位符会被翻译为一个?号(SELECT * FROM USER WHERE id= #{id},SELECT * FROM USER WHERE id= ?),向占位符输入参数,mybatis自动进行java类型和jdbc类型(String,date,整型)的转换。程序员不需要考虑参数的类型,比如:传入字符串,mybatis最终拼接好的sql就是参数两边加单引号,所以不能写成’%#{}%’,因为#{}会自动加上单引号。${}:不是占位符,表示sql的拼接,通过${}接收参数,将参数的内容不加任何修饰拼接在sql中(select * from user where username like '%小明%')。 #{}接收pojo数据,可以使用OGNL解析出pojo的属性值,${}也可以接收pojo数据,可以使用OGNL解析出pojo的属性值。 ${}缺点:不能防止sql注入,SELECT * FROM USER WHERE username= ‘zhansan’ or ‘1=1’,这也叫sql拼接,所以为了防止sql注入,采用预编译statement。
mybatis开发过程小结 1、编写SqlMapConfig.xml 2、编写mapper.xml 定义了statement 3、编程通过配置文件创建SqlSessionFactory 4、通过SqlSessionFactory获取SqlSession 5、通过SqlSession操作数据库 如果执行添加、更新、删除需要调用SqlSession.commit() 6、SqlSesion使用完成要关闭
相关文章推荐
- CentOS7上安装MySQL Workbench
- Docker 学习笔记(二)--Docker客户端和守护进程
- 八、机器学习系统设计笔记之对回归:改进的推荐
- JS实时时间显示
- The Highest Mark(01背包)
- 设置XShell快捷键 复制粘贴 并禁用智能选择
- HDU_5120 Intersection
- Swift 解决dismissViewControllerAnimated关闭当前Controller无效的问题
- 二分查找
- 七、机器学习系统设计笔记之对回归推荐
- Java对象基础的一些小问题
- SQL Delta实用案例介绍,很好的东西,帮了我不少忙
- easyui-datagrid行数据field原样输出html标签
- UVa11400
- Debian安装memcached和php5-memcache模块
- 思想的启蒙与宽容
- 构造方法细谈
- HDU 3127 WHUgirls(完全背包)
- ubuntu 14.04 如何设置静态ip
- Leetcode Sort Colors