![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
mybatis
·小脑斧·
这个作者很懒,什么都没留下…
展开
-
Mybatis面试汇总
本篇文章收集自网络,原出处不明。1、#{}和${}的区别是什么?答:${}是 Properties 文件中的变量占位符,它可以用于标签属性值和 sql 内部,属于静态文本替换,比如${driver}会被静态替换为com.mysql.jdbc.Driver。#{}是 sql 的参数占位符,Mybatis 会将 sql 中的#{}替换为?号,在 sql 执行前会使用 PreparedStatement 的参数设置方法,按序给 sql 的?号占位符设置参数值,比如 ps.setInt(0, para.原创 2020-08-15 17:25:44 · 93 阅读 · 0 评论 -
Mybatis(三)多表查询、注解开发、一对一、一对多、多对多查询、缓存(一级缓存、二级缓存)
1.Mybatis多表查询1.1 一对一查询1.1.1 一对一查询的模型MapperScannerConfigurer用户表和订单表的关系为,一个用户有多个订单,一个订单只从属于一个用户一对一查询的需求:查询一个订单,与此同时查询出该订单所属的用户1.1.2一对一查询的语句对应的sql语句:select * from orders o,user u where o.uid=u.id;查询的结果如下:1.1.3 创建Order和User实体public class Order {原创 2020-08-15 17:19:33 · 614 阅读 · 0 评论 -
Mybatis(二)代理开放、动态Sql语句、mybatis核心配置文件深入、Pagehelper
1.Mybatis的Dao层实现1.1 传统开发方式1.1.1编写UserDao接口public interface UserDao { List<User> findAll() throws IOException;}1.1.2.编写UserDaoImpl实现public class UserDaoImpl implements UserDao { public List<User> findAll() throws IOException {原创 2020-08-13 21:44:02 · 148 阅读 · 0 评论 -
mybatis笔记(一)核心配置文件、增删改查、相应API
1.原始jdbc操作的分析1.1原始jdbc操作(查询数据)1.2原始jdbc操作(插入数据)原始jdbc开发存在的问题如下:①数据库连接创建、释放频繁造成系统资源浪费从而影响系统性能②sql 语句在代码中硬编码,造成代码不易维护,实际应用 sql 变化的可能较大,sql 变动需要改变java代码。③查询操作时,需要手动将结果集中的数据手动封装到实体中。插入操作时,需要手动将实体的数据设置到sql语句的占位符位置应对上述问题给出的解决方案:①使用数据库连接池初始化连接资源原创 2020-08-13 10:44:28 · 236 阅读 · 0 评论