随笔分类 -  mybatis

摘要:16.全文代码开始在创建 MyBatis 项目之前,首先创建 website 数据表,SQL 语句如下。 DROP TABLE IF EXISTS `website`; CREATE TABLE `website` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varc 阅读全文
posted @ 2022-03-13 14:07 随遇而安== 阅读(39) 评论(0) 推荐(0)
摘要:15.逆向工程Mybatis 提供了一个逆向工程工具,该工具可以根据数据表自动生成针对单表的 po 类、mapper 映射文件和 mapper 接口。大大缩减了开发时间,可以让开发人员将更多的精力放在繁杂的业务逻辑上。之所以强调单表两个字,是因为 MyBatis 逆向工程生成的 Mapper 中的操作都是针对单表 阅读全文
posted @ 2022-03-13 14:03 随遇而安== 阅读(45) 评论(0) 推荐(0)
摘要:14.缓存(一级缓存和二级缓存)缓存可以将数据保存在内存中,是互联网系统常常用到的。目前流行的缓存服务器有 MongoDB、Redis、Ehcache 等。缓存是在计算机内存上保存的数据,读取时无需再从磁盘读入,因此具备快速读取和使用的特点。和大多数持久化框架一样,MyBatis 提供了一级缓存和二级缓存的支持。默认情况下,MyB 阅读全文
posted @ 2022-03-13 14:00 随遇而安== 阅读(238) 评论(0) 推荐(0)
摘要:13.分页功能MyBatis 的分页功能是基于内存的分页,即先查询出所有记录,再按起始位置和页面容量取出结果。本节我们为查询网站记录增加分页功能,要求结果列表按照 id 升序排列。WebsiteMapper 中方法如下。 /** * * @param site * @param currentPageNo 起始位 阅读全文
posted @ 2022-03-13 13:59 随遇而安== 阅读(45) 评论(0) 推荐(0)
摘要:12.动态SQL动态 SQL 是 MyBatis 的强大特性之一。在 JDBC 或其它类似的框架中,开发人员通常需要手动拼接 SQL 语句。根据不同的条件拼接 SQL 语句是一件极其痛苦的工作。例如,拼接时要确保添加了必要的空格,还要注意去掉列表最后一个列名的逗号。而动态 SQL 恰好解决了这一问题,可以根据场景动 阅读全文
posted @ 2022-03-13 13:57 随遇而安== 阅读(67) 评论(0) 推荐(0)
摘要:11.关联(级联)查询一、MyBatis一对一关联查询 一对一级联关系在现实生活中是十分常见的,例如一个大学生只有一个学号,一个学号只属于一个学生。同样,人与身份证也是一对一的级联关系。在 MyBatis 中,通过 <resultMap> 元素的子元素 <association> 处理一对一级联关系。示例代码如下。 <a 阅读全文
posted @ 2022-03-13 13:44 随遇而安== 阅读(194) 评论(0) 推荐(0)
摘要:10.注解为了简化 XML 的配置,MyBatis 提供了注解。我们可以通过 MyBatis 的 jar 包查看注解,如下图所示。 以上注解主要分为三大类,即 SQL 语句映射、结果集映射和关系映射。下面分别进行讲解。 1. SQL 语句映射 1)@Insert:实现新增功能 @Insert("insert 阅读全文
posted @ 2022-03-13 13:33 随遇而安== 阅读(43) 评论(0) 推荐(0)
摘要:9.resultMap元素resultMap 是 MyBatis 中最复杂的元素,主要用于解决实体类属性名与数据库表中字段名不一致的情况,可以将查询结果映射成实体对象。下面我们先从最简单的功能开始介绍。 现有的 MyBatis 版本只支持 resultMap 查询,不支持更新或者保存,更不必说级联的更新、删除和修改。 1.r 阅读全文
posted @ 2022-03-13 13:30 随遇而安== 阅读(108) 评论(0) 推荐(0)
摘要:8.delete标签MyBatis delete 标签用于定义 delete 语句,执行删除操作。当 MyBatis 执行完一条更新语句后,会返回一个整数,表示受影响的数据库记录的行数。下面我们通过一个示例演示 delete 标签的用法。1. 在 WebsiteMapper.xml 中使用 delete 标签添加一条 阅读全文
posted @ 2022-03-13 13:27 随遇而安== 阅读(133) 评论(0) 推荐(0)
摘要:7. update标签MyBatis update 标签用于定义更新语句,执行更新操作。当 MyBatis 执行完一条更新语句后,会返回一个整数,表示受影响的数据库记录的行数。下面我们通过一个示例演示 update 标签的用法。1. 在 WebsiteMapper.xml 中添加以下更新语句,代码如下。 <!--upda 阅读全文
posted @ 2022-03-13 13:22 随遇而安== 阅读(323) 评论(0) 推荐(0)
摘要:6.insert标签MyBatis insert 标签用来定义插入语句,执行插入操作。当 MyBatis 执行完一条插入语句后,就会返回其影响数据库的行数。下面通过一个示例演示 insert 标签的具体用法。1. 修改 WebsiteMapper.xml,增加插入语句,代码如下。 <!-- 增加网站信息 --> <in 阅读全文
posted @ 2022-03-06 15:25 随遇而安== 阅读(169) 评论(0) 推荐(0)
摘要:5.select标签在 MyBatis 中,select 标签是最常用也是功能最强大的 SQL 语言,用于执行查询操作。select 示例语句如下。 <select id="selectAllWebsite" resultType="net.biancheng.po.Website" parameterType="st 阅读全文
posted @ 2022-03-06 15:20 随遇而安== 阅读(419) 评论(0) 推荐(0)
摘要:4.MyBatis执行SQL的两种方式本节主要介绍 MyBatis 执行 SQL 语句的两种方式和它们的区别。MyBatis 有两种执行 SQL 语句的方式,如下: 通过 SqlSession 发送 SQL 通过 SqlSession 获取 Mapper 接口,通过 Mapper 接口发送 SQL 一、SqlSession发送SQL 有 阅读全文
posted @ 2022-03-06 15:16 随遇而安== 阅读(826) 评论(0) 推荐(0)
摘要:3.Mapper(映射器)一、简介 映射器是 MyBatis 中最重要的文件,文件中包含一组 SQL 语句(例如查询、添加、删除、修改),这些语句称为映射语句或映射 SQL 语句。映射器由 Java 接口和 XML 文件(或注解)共同组成,它的作用如下。 定义参数类型 配置缓存 提供 SQL 语句和动态 SQL 定义查询结果 阅读全文
posted @ 2022-03-06 15:15 随遇而安== 阅读(455) 评论(0) 推荐(0)
摘要:2.MyBatis配置文件(mybatis-config.xml)一、MyBatis 配置文件的结构如下。 <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dt 阅读全文
posted @ 2022-03-06 15:09 随遇而安== 阅读(125) 评论(0) 推荐(0)
摘要:1.MyBatis核心对象1. MyBatis 有三个基本要素: 核心接口和类 MyBatis核心配置文件(mybatis-config.xml) SQL映射文件(mapper.xml) 下面首先介绍 MyBatis 的核心接口和类,如下所示。 每个 MyBatis 应用程序都以一个 SqlSessionFactory 对象 阅读全文
posted @ 2022-03-04 21:37 随遇而安== 阅读(102) 评论(0) 推荐(0)