zoukankan      html  css  js  c++  java
  • mybatis知识点(已掌握)

    1.${} 和 #{} 的区别?

    ${} 直接显示传入数据,不能防止sql注入,一般用于传数据库对象(比如表名)。

    #{} 传入数据被当成字符串,自动加上双引号,防止sql注入。

    2.有哪些Executor?区别?

    SimpleExecutor:每执行一次update或select,就开启一个Statement对象,用完立刻关闭Statement对象。

    ReuseExecutor执行update或select,以sql作为key查找Statement对象,存在就使用,不存在就创建,用完后,不关闭Statement对象,而是放置于Map<String, Statement>内,供下一次使用。简言之,就是重复使用Statement对象。

    BatchExecutor执行update(没有select,JDBC批处理不支持select),将所有sql都添加到批处理中(addBatch()),等待统一执行(executeBatch()),它缓存了多个Statement对象,每个Statement对象都是addBatch()完毕后,等待逐一执行executeBatch()批处理。与JDBC批处理相同。

    作用范围:Executor的这些特点,都严格限制在SqlSession生命周期范围内。

  • 相关阅读:
    实验一 软件开发文档与工具的安装与使用
    ATM管理系统
    举例分析流程图与活动图的区别与联系
    四则运算
    机器学习 实验三
    机器学习 实验四
    机器视觉实验二
    实验三
    实验二
    实验一
  • 原文地址:https://www.cnblogs.com/jdbc2nju/p/7271815.html
Copyright © 2011-2022 走看看