![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MyBatis
qq_27378875
哈哈
展开
-
MyBatis的缓存结构
MyBatis提供了一级缓存和二级缓存,一级缓存是SqlSession级别的缓存,每个SqlSession类的实例对象中有一个数据结构(HashMap)可以存储缓存数据,不同的SqlSession的一级缓存互不影响,二级缓存是Mapper级别的缓存,多个SqlSession类的实例对象操作同一个Mapper(namespace分割)配置文件中的SQL语句,mybatis默认开启一级缓...原创 2018-07-29 16:32:24 · 148 阅读 · 0 评论 -
MyBatis中#{}和${}的区别
#{}代表占位符,使用预编译处理 ${}代表字符串拼接 MyBatis在处理#{}时,会将其替换为?,调用PreparedStatement的set方法赋值,将其视作一个整体,MyBatis会进行必要的安全检查和转义 MyBatis在处理${}时,会将其替换为字符串,这样容易出现sql注入的危机 ${}适合于有时候可能需要直接插入一个不做任何修改的字符串到SQL语句中: 动...转载 2018-07-29 16:49:41 · 105 阅读 · 0 评论 -
原始JDBC连接数据库
JDBC访问数据库的工作过程: 加载驱动 创建语句对象 执行SQL语句 处理结果集 关闭连接 static:装载驱动类,驱动类通过static块实现在DriverManager中的“自动注册” Connection接口负责应用程序对数据库的连接,在加载驱动之后,使用url、username、password三个参数,创建到具体数据库的连接,Connection只是接口,真正的实现...转载 2018-08-05 10:18:06 · 380 阅读 · 0 评论