zoukankan      html  css  js  c++  java
  • mybatis04 根据用户名称模糊查询用户信息

    根据用户名称模糊查询用户信息可能返回多条记录。
    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使用完成要关闭
  • 相关阅读:
    javascript HTML DOM
    js 同步异步阻塞非阻塞非原创
    端口规范
    SASS用法指南
    整合js,css文件
    HTTP状态码大全
    控制移动端页面的缩放(meta)
    移动端最小以及最大的宽度
    H5手机端关注的问题
    javascript高级编程3第三章:基本概念 本章内容 语法 数据类型 流控制语句 函数
  • 原文地址:https://www.cnblogs.com/yaowen/p/4868961.html
Copyright © 2011-2022 走看看