MyBatis bind标签 每个数据库的拼接函数或连接符号都不同,例如 MySQL 的 concat 函数、Oracle 的连接符号“||”等。这样 SQL 映射文件就需要根据不同的数据库提供不同的实现,显然比较麻烦,且不利于代码的移植。幸运的是,MyBatis 提供了 bind 标签来解决这一问题。 2021-11-11 11:07MyBatis参数MyBatis查询MyBatis注解MyBatis分页功能 MyBatis 的分页功能是基于内存的分页,即先查询出所有记录,再按起始位置和页面容量取出结果。2021-11-11 11:06MyBatis参数MyBatis查询MyBatis注解MyBatis trim标签 在 MyBatis 中除了使用 if+where 实现多条件查询,还有一个更为灵活的元素 trim 能够替代之前的做法。2021-11-11 11:06MyBatis参数MyBatis查询MyBatis注解MyBatis缓存(一级缓存和二级缓存) 缓存可以将数据保存在内存中,是互联网系统常常用到的。目前流行的缓存服务器有 MongoDB、Redis、Ehcache 等。缓存是在计算机内存上保存的数据,读取时无需再从磁盘读入,因此具备快速读取和使用的特点。 缓存可以将数据保存在内存中,是互联网系统常常用到的。目前流行的缓存服务器有 Mon2021-11-11 11:05MyBatis参数MyBatis查询MyBatis注解MyBatis foreach标签 前面我们学习了如何使用 Mybatisif、where、trim等动态语句来处理一些简单的查询操作。对于一些 SQL 语句中含有 in 条件,需要迭代条件集合来生成的情况,可以使用 foreach 来实现 SQL 条件的迭代。 2021-11-10 14:33MyBatis参数MyBatis查询MyBatis注解MyBatis where标签 细心的读者可能会发现,我们在《MyBatis choose、when和otherwise语句》一节的 SQL 语句中加入了一个条件“1=1”,如果没有加入这个条件,那么可能就会变成下面这样一条错误的语句。2021-11-10 14:33MyBatis参数MyBatis查询MyBatis注解MyBatis choose、when和otherwise标签 MyBatis 中动态语句 choose-when-otherwise 类似于 Java 中的 switch-case-default 语句。由于 MyBatis 并没有为 if 提供对应的 else 标签,如果想要达到...... 的效果,可以借助 、、 来实现。2021-11-10 14:32MyBatis参数MyBatis查询MyBatis注解MyBatis if标签:条件判断 MyBatis if 类似于 Java 中的 if 语句,是 MyBatis 中最常用的判断语句。使用 if 标签可以节省许多拼接 SQL 的工作,把精力集中在 XML 的维护上。2021-11-10 14:32MyBatis参数MyBatis查询MyBatis注解MyBatis关联(级联)查询 级联关系是一个数据库实体的概念,有 3 种级联关系,分别是一对一级联、一对多级联以及多对多级联。2021-11-09 10:32MyBatis参数MyBatis查询MyBatis注解MyBatis一对一关联查询 一对一级联关系在现实生活中是十分常见的,例如一个大学生只有一个学号,一个学号只属于一个学生。同样,人与身份证也是一对一的级联关系。2021-11-09 10:32MyBatis参数MyBatis查询MyBatis注解MyBatis一对多关联查询 在实际生活中也有许多一对多级联关系,例如一个用户可以有多个订单,而一个订单只属于一个用户。同样,国家和城市也属于一对多级联关系。2021-11-09 10:31MyBatis参数MyBatis查询MyBatis注解MyBatis动态SQL 动态 SQL 是 MyBatis 的强大特性之一。在 JDBC 或其它类似的框架中,开发人员通常需要手动拼接 SQL 语句。根据不同的条件拼接 SQL 语句是一件极其痛苦的工作。例如,拼接时要确保添加了必要的空格,还要注意去掉列表最后一个列名的逗号。而动态 SQL 恰好解决了这一问题,可以根据场2021-11-09 10:31MyBatis参数MyBatis查询MyBatis注解MyBatis注解(3种类型) 为了简化 XML 的配置,MyBatis 提供了注解。我们可以通过 MyBatis 的 jar 包查看注解,如下图所示。2021-11-08 11:19MyBatis参数MyBatis查询MyBatis注解MyBatisresultMap元素 resultMap是MyBatis中最复杂的元素,主要用于解决实体类属性名与数据库表中字段名不一致的情况,可以将查询结果映射成实体对象。下面我们先从最简单的功能开始介绍。2021-11-08 11:15MyBatis参数MyBatis查询MyBatis注解MyBatis delete标签MyBatis delete 标签用于定义 delete 语句,执行删除操作。当 MyBatis 执行完一条更新语句后,会返回一个整数,表示受影响的数据库记录的行数。 2021-11-08 11:15MyBatis参数MyBatis查询MyBatis注解MyBatis update标签 MyBatis update 标签用于定义更新语句,执行更新操作。当 MyBatis 执行完一条更新语句后,会返回一个整数,表示受影响的数据库记录的行数。2021-11-08 11:03MyBatis参数MyBatis查询MyBatis注解MyBatis insert标签 MyBatis insert 标签用来定义插入语句,执行插入操作。当 MyBatis 执行完一条插入语句后,就会返回其影响数据库的行数。2021-11-05 10:42MyBatis参数MyBatis查询MyBatis注解MyBatis select标签 在 MyBatis 中,select 标签是最常用也是功能最强大的 SQL 语言,用于执行查询操作。2021-11-05 10:41MyBatis参数MyBatis查询MyBatis注解MyBatis执行SQL的两种方式 有映射器之后就可以通过 SqlSession 发送 SQL 了。我们以 getWebsite 这条 SQL 为例看看如何发送 SQL。2021-11-05 10:40MyBatis参数MyBatis查询MyBatis注解MyBatis Mapper(映射器) 映射器是 MyBatis 中最重要的文件,文件中包含一组 SQL 语句(例如查询、添加、删除、修改),这些语句称为映射语句或映射 SQL 语句。2021-11-05 10:39MyBatis参数MyBatis查询MyBatis注解MyBatis配置文件(mybatis-config.xml) 下面介绍 XML 配置文件中的重要元素(标签)。 configuration 元素是整个 XML 配置文件的根节点,其角色就相当于是 MyBatis 的总管,MyBatis 所有的配置信息都会存放在它里面。2021-11-04 11:01MyBatis参数MyBatis查询MyBatis注解MyBatis下载(多种方式) 在实际开发之前,我们必须为 MyBatis 搭建适当的环境。下面介绍 MyBatis 的下载以及目录结构。2021-11-04 11:00MyBatis参数MyBatis查询MyBatis注解MyBatis核心对象每个 MyBatis 应用程序都以一个 SqlSessionFactory 对象的实例为核心。 首先获取 SqlSessionFactoryBuilder 对象,可以根据 XML 配置文件或者 Configuration 类的实例构建该对象。 然后获取 SqlSessionFactory2021-11-04 11:00MyBatis参数MyBatis查询MyBatis注解MyBatis和Hibernate的区别 Hibernate 使用 HQL(Hibernate Query Language)语句,独立于数据库。不需要编写大量的 SQL,就可以完全映射,但会多消耗性能,且开发人员不能自主的进行 SQL 性能优化。提供了日志、缓存、级联(级联比 MyBatis 强大)等特性。 2021-11-04 11:00MyBatis参数MyBatis查询MyBatis注解MyBatis是什么 MyBatis 是一个开源、轻量级的数据持久化框架,是 JDBC 和 Hibernate 的替代方案。MyBatis 内部封装了 JDBC,简化了加载驱动、创建连接、创建 statement 等繁杂的过程,开发者只需要关注 SQL 语句本身。 2021-11-03 10:08MyBatis参数MyBatis查询MyBatis注解