MyBatis
文章平均质量分 57
IT_小杨
没有塌不平的路,只有不努力的人
展开
-
Mybatis动态SQL
如果你使用过 JDBC 或其它类似的框架,你应该能理解根据不同条件拼接 SQL 语句有多痛苦,例如拼接时要确保不能忘记添加必要的空格,还要注意去掉列表最后一个列名的逗号。MyBatis中使用mysql的模糊查询字符串拼接(like) 中也涉及到bind的使用。创建一个 bind 元素标签的变量后 ,就可以在下面直接使用,使用 bind 拼接字符串不仅可以避免因更换数据库而修改 SQL,也能预防 SQL 注入。<if>元素是最常用的元素,它类似于Java中的if语句。item:表示数组或集合中的每一个数据。原创 2023-05-31 11:16:20 · 110 阅读 · 0 评论 -
Mybatis获取自增长ID
keyProperty的值就是实体类中自增长字段名。keyColumn的值就是数据库中自增长字段名。原创 2023-05-30 11:45:07 · 2678 阅读 · 0 评论 -
MyBatis一次执行多条SQL语句的操作
Role role = new Role("游客");原创 2023-05-30 11:30:28 · 3657 阅读 · 0 评论 -
Mybatis缓存机制
缓存(Cache)就是一个临时存储数据的地方,当我们读取数据时会首先从缓存中查找需要的数据,如果找到了则直接执行,找不到的话再从内存中去找。原创 2023-05-29 21:08:46 · 169 阅读 · 0 评论 -
使用Mybatis搭建第一个工程
MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的 POJOs(Plan Old Java Objects,普通的 Java对象)映射成数据库中的记录。原创 2023-05-24 11:38:32 · 99 阅读 · 0 评论 -
mybatis中#{}和${}的区别
MyBatis在处理#{}时,会将SQL中的#{}替换为?MyBatis在处理 $ { } 时,就是把 ${ } 替换成变量的值。#{}: 解析为一个 JDBC 预编译语句(prepared statement)的参数标记符,一个 #{ } 被解析为一个参数占位符。${}: 仅仅为一个纯碎的 string 替换,在动态 SQL 解析阶段将会进行变量替换。在mybatis中的$与#都是在sql中动态的传入参数。#{}是预编译处理,$ {}是字符串替换。sql语句中#{}表示一个占位符。原创 2023-05-25 16:09:06 · 98 阅读 · 0 评论 -
Mybatis中一对多、多对一关系
type属性:最终需要封装的类型(当前resultMap所对应的方法的返回值)property属性:主键字段在实体类中的名称。property属性:多方实体类中的对方的属性。result子标签:用于标明字段中的除了主键字段外的其他字段。property属性:改字段在实体类中的名称。column属性:主键字段在数据库中的名称。resultMap属性:当查询到的字段是多个类中的信息的时候使用。parameterType属性:Dao层方法中的参数类型。id子标签:用于标明字段中的主键字段。原创 2023-05-29 15:50:22 · 103 阅读 · 0 评论 -
Mybatis懒加载、立即加载
懒加载也叫延时加载,就是在使用的时候才进行加载。例如,我们在用Mybatis进行一对多的时候,当我们有一个用户,他有几十个账户。在查询用户时,如果需要把关联的账户查出来,mybatis会再次发出sql语句进行查询,减轻了对我们数据库的压力。立即加载就是:不管用不用,只要一调用方法,马上发起查询。原创 2023-05-29 20:38:02 · 477 阅读 · 0 评论