随笔分类 -  mybatis学习笔记

摘要:当我们使用注解开发时有时会遇到数据库字段名与实体类属性名不一致的问题。xml方式开发可以通过结果集映射的方式解决,那注解方式开发要怎么解决呢? 注解解决方式: @Results()注解 Results注解中有两个常用的参数,一个是id,另一个是value。 id:这个参数的主要作用在于唯一标记这个R 阅读全文
posted @ 2020-07-04 11:46 白熊啊 阅读(7532) 评论(0) 推荐(0)
摘要:一、Mybatis缓存 ● MyBatis包含一个非常强大的查询緩存特性,它可以非常方便地定制和配置缓存。绶存可以极大的提升查询效率。 ● MyBatis系统中默认定义了两级缓存:一级缓存和二级缓存 ○ 默认情况下,只有一级缓存开启。( SqlSession级别的缓存,也称为本地缓存) ○ 二级缓存 阅读全文
posted @ 2020-03-18 02:16 白熊啊 阅读(608) 评论(0) 推荐(0)
摘要:首先先来说明一下数据库,数据库有两张表student表和teacher表: student表如下: teacher表如下: 两张表的关系:多个学生关联一位老师(多对一) *其中tid是外键 需要sql语句的朋友可以在这里取: CREATE TABLE `teacher`( `id` INT(10) 阅读全文
posted @ 2020-03-17 15:43 白熊啊 阅读(1840) 评论(0) 推荐(0)
摘要:我们想要mybatis帮助我们自动提交事务其实很简单,只需要在SqlSessionFactory对象的openSession方法中设置参数为true就可以了,mybatis工具类如下: public class MybatisUtils { private static SqlSessionFact 阅读全文
posted @ 2020-03-16 16:31 白熊啊 阅读(17660) 评论(0) 推荐(1)
摘要:一、作用 使用@Param注解表示给参数命名,名称就是括号中的内容。给参数命名,然后在映射文件中就能根据名称获取参数值了。在mybatis中我们常常要使用到多个参数,但是在xml中的parameterType往往只能指定一个参数类型。为了解决这个问题,我们可以在dao的接口中使用@param注解,多 阅读全文
posted @ 2020-03-16 15:59 白熊啊 阅读(1635) 评论(0) 推荐(0)
摘要:前言: 一个语句既可以通过 XML 定义,也可以通过注解定义。不过,由于 Java 注解的一些限制以及某些 MyBatis 映射的复杂性,要使用大多数高级映射(比如:嵌套联合映射),仍然需要使用 XML 配置。简单的说就是注解开发只适合一些简单的sql语句,如果sql语句太复杂,建议还是使用 XML 阅读全文
posted @ 2020-03-16 13:11 白熊啊 阅读(358) 评论(0) 推荐(0)
摘要:首先回顾一下分页的sql语句: SELEC * FROM 表名 LIMIT startIndex,pageSize tips: *startIndex:起始的位置(从哪个元素开始分页) *pageSize:每页多少个元素 例如: select * from user limit 0,2 :查询use 阅读全文
posted @ 2020-03-15 21:38 白熊啊 阅读(229) 评论(0) 推荐(0)
摘要:为什么要使用日志工厂? 我们想一下,我们在测试SQL的时候,要是能够在控制台输出 SQL 的话,是不是就能够有更快的排错效率?答案是肯定的,如果一个 数据库相关的操作出现了问题,我们就可以根据输出的SQL语句快速排查问题。而日志工厂就是这样一个工具,帮助我们把sql语句在控制台输出。 Mybatis 阅读全文
posted @ 2020-03-15 21:00 白熊啊 阅读(183) 评论(0) 推荐(0)
摘要:首先说一下,我的数据库名字叫mybatis,里边有一张user表,表中有三个字段,id、name、pwd;然后实体类中对应三个属性id、name、password(id和name跟数据库字段名一致,但是第三个属性password和数据库的字段pwd不同) 解决方案 方式一:起别名 在映射文件中给sq 阅读全文
posted @ 2020-03-15 19:47 白熊啊 阅读(2545) 评论(0) 推荐(0)
摘要:在定义 SQL 映射语句之前,我们需要告诉 MyBatis 到哪里去找到这些语句。 在自动查找资源方面,Java 并没有提供一个很好的解决方案,所以最好的办法是直接告诉 MyBatis 到哪里去找映射文件。 我们可以使用相对于类路径的资源引用,或完全限定资源定位符(包括 file:/// 形式的 U 阅读全文
posted @ 2020-03-15 16:47 白熊啊 阅读(456) 评论(0) 推荐(0)
摘要:为什么要用类型别名? 答:类型别名可为 Java 类型设置一个缩写名字。 它仅用于 XML 配置,意在降低冗余的全限定类名书写。 举个例子说明: 在我们编写映射文件的时候: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC 阅读全文
posted @ 2020-03-15 16:16 白熊啊 阅读(1313) 评论(0) 推荐(0)
摘要:Mybatis核心配置文件中有很多的配置项,配置文档的顶层结构如下: *注意:配置项的顺序不能颠倒,如果颠倒了它们的顺序,在MyBatis的自启动阶段会发生异常,导致程序无法运行。 properties(属性) 这里介绍properties的两种使用方式: ⚠️注意:因为是单独介绍,所以这里显示pr 阅读全文
posted @ 2020-03-15 13:56 白熊啊 阅读(1343) 评论(0) 推荐(1)
摘要:1.编写接口 List<User> getUserLike(String value); 2.编写映射文件 <select id="getUserLike" resultType="com.kuang.pojo.User"> SELECT * FROM mybatis.user WHERE name 阅读全文
posted @ 2020-03-15 11:43 白熊啊 阅读(264) 评论(0) 推荐(0)
摘要:如何创建项目,注入依赖,编写核心配置文件、工具类、实体类这里就不详细说了,具体可以参考下边这条博文 https://www.cnblogs.com/bear7/p/12491937.html 这里将详细说一下有关mybatis操作数据库实现增删盖查的步骤: *编写接口 *编写对应映射文件中mappe 阅读全文
posted @ 2020-03-14 18:50 白熊啊 阅读(367) 评论(0) 推荐(0)
摘要:环境:IDEA2017,jdk1.8.0,maven3.5.2 步骤: 1.创建一个普通Maven工程,删掉src目录,再创建一个maveb的model命名为mybatis-01 2.配置 pom.xml,注入依赖(导入所需的 jar 包) <?xml version="1.0" encoding= 阅读全文
posted @ 2020-03-14 14:07 白熊啊 阅读(539) 评论(0) 推荐(0)
摘要:一、创建一个普通的Maven项目 1.启动IDEA 2.创建一个Maven项目 3.Maven的目录结构 二、使用模板创建一个MavenWeb项目 1.启动IDEA 2.创建一个MavenWeb项目 项目创建好之后,右下角会弹出一个提示框(如下图所示),点击Enable Auto-Import(自动 阅读全文
posted @ 2020-03-11 17:28 白熊啊 阅读(1311) 评论(0) 推荐(0)
摘要:1.从Maven官网下载压缩包 2.将压缩包解压到你像放置Maven的路径,我放置在D:\0_FileSave\Maven 3.创建本地仓库 MavenRepository 在Maven解压路径下D:\0_FileSave\Maven新建一个文件夹命名为MavenRepository。 4.打开 c 阅读全文
posted @ 2020-03-10 13:26 白熊啊 阅读(272) 评论(0) 推荐(0)