mybatis
文章平均质量分 78
22222222
JD强子
这个作者很懒,什么都没留下…
展开
-
Spring事务管理
事务(Transaction)事务(Transaction)是面向关系型数据库(RDBMS)企业应用程序的重要组成部分,用来确保数据的完整性和一致性。一个数据库事务是一个被视为单一的工作单元的操作序列。这些操作应该要么完整地执行,要么完全不执行。事务管理是一个重要组成部分,RDBMS 面向企业应用程序,以确保数据完整性和一致性。事务的概念可以描述为具有以下四个关键属性说成是 ACID:原子性(Atomicity):一个事务是一个不可分割的工作单位,事务中包括的动作要么都做要么都不做。一致性(C原创 2021-10-18 09:42:38 · 86 阅读 · 0 评论 -
Spring集成MyBatis
回忆MyBatis定义表user定义pojo实体类User在dao层定义UserMapper接口接口对应的Mapper映射文件在 Dao 接口的包中创建 MyBatis 的映射文件 UserMapper,命名与接口名相同,本例为UserMapper.xml。mapper 中的 namespace 取值也为 Dao 接口的全限定性名。定义 MyBatis 主配置文件在resources下定义 MyBatis 的主配置文件,命名为 mybatis-config.xml。<?xml原创 2021-10-17 05:02:37 · 323 阅读 · 0 评论 -
MyBatis foreach标签
前面我们学习了如何使用 Mybatis if、where、trim 等动态语句来处理一些简单的查询操作。对于一些 SQL 语句中含有 in 条件,需要迭代条件集合来生成的情况,可以使用 foreach 来实现 SQL 条件的迭代。Mybatis foreach 标签用于循环语句,它很好的支持了数据和 List、set 接口的集合,并对此提供遍历的功能。语法格式如下。 SELECT * FROM product_ WHERE ID in <foreach item="item原创 2021-09-29 07:48:02 · 3354 阅读 · 0 评论 -
MyBatis trim标签
在 MyBatis 中除了使用 if+where 实现多条件查询,还有一个更为灵活的元素 trim 能够替代之前的做法。trim 一般用于去除 SQL 语句中多余的 AND 关键字、逗号,或者给 SQL 语句前拼接 where、set 等后缀,可用于选择性插入、更新、删除或者条件查询等操作。trim 语法格式如下。trim 中属性说明如下。属性描述prefix给SQL语句拼接的前缀,为 trim 包含的内容加上前缀suffix给SQL语句拼接的后缀,为&原创 2021-09-29 04:39:45 · 398 阅读 · 0 评论 -
MyBatis set标签
在 Mybatis 中,update 语句可以使用 set 标签动态更新列。set 标签可以为 SQL 语句动态的添加 set 关键字,剔除追加到条件末尾多余的逗号。使用 if+set 标签修改后,如果某项为 null 则不进行更新,而是保持数据库原值。如下示例:<!-- if/set(判断参数) - 将实体 User类不为空的属性更新 --> <update id="updateUser_if_set" parameterType="com.pojo.User">原创 2021-09-29 04:25:26 · 1730 阅读 · 0 评论 -
MyBatis where标签
a原创 2021-09-29 03:32:39 · 506 阅读 · 0 评论 -
MyBatis choose(when, otherwise)标签
有时候我们并不想应用所有的条件,而只是想从多个选项中选择一个。而使用if标签时,只要test中的表达式为 true,就会执行 if 标签中的条件。MyBatis 提供了 choose 元素。if标签是与(and)的关系,而 choose 是或(or)的关系。动态语句 choose-when-otherwise 语法如下。 choose标签是按顺序判断其内部when标签中的test条件出否成立,如果有一个成立,则 choose 结束。当 choose 中所有 when 的条件都不满则时,则执行 ..原创 2021-09-28 15:39:14 · 732 阅读 · 0 评论 -
MyBatis if标签:条件判断
MyBatis if 类似于 Java 中的 if 语句,是 MyBatis 中最常用的判断语句。使用 if 标签可以节省许多拼接 SQL 的工作,把精力集中在 XML 的维护上。if 语句使用方法简单,常常与 test 属性联合使用。语法如下。当判断条件为 true 时,才会执行所包含的 SQL 语句。...原创 2021-09-28 04:27:27 · 13136 阅读 · 2 评论 -
MyBatis动态SQL和sql片段
动态 SQL 是 MyBatis 的强大特性之一。在 JDBC 或其它类似的框架中,开发人员通常需要手动拼接 SQL 语句。根据不同的条件拼接 SQL 语句是一件极其痛苦的工作。例如,拼接时要确保添加了必要的空格,还要注意去掉列表最后一个列名的逗号。而动态 SQL 恰好解决了这一问题,可以根据场景动态的构建查询。动态 SQL 只有几个基本元素,与 JSTL 或 XML 文本处理器相似,十分简单明了,大量的判断都可以在 MyBatis 的映射 XML 文件里配置,以达到许多需要大量代码才能实现的功能。动态原创 2021-09-28 03:10:14 · 145 阅读 · 0 评论 -
Mybatis实现关联表查询
创建表和数据一位老师(班主任)和学生们(同班)CREATE TABLE `teacher` ( `id` INT(10) NOT NULL, `name` VARCHAR(30) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=INNODB DEFAULT CHARSET=utf8INSERT INTO teacher(`id`, `name`) VALUES (1, '秦老师'); CREATE TABLE `student` ( `id`原创 2021-09-27 04:26:41 · 337 阅读 · 0 评论 -
Mybatis接口注解
面向接口编程大家之前都学过面向对象编程,也学习过接口,但在真正的开发中,很多时候我们会选择面向接口编程- 根本原因 : 解耦 , 可拓展 , 提高复用 , 分层开发中 , 上层不用管具体的实现 , 大家都遵守共同的标准 , 使得开发变得容易 , 规范性更好- 在一个面向对象的系统中,系统的各种功能是由许许多多的不同对象协作完成的。在这种情况下,各个对象内部是如何实现自己的,对系统设计人员来讲就不那么重要了;- 而各个对象之间的协作关系则成为系统设计的关键。小到不同类之间的通信,大到各模块之间的交原创 2021-09-24 04:52:39 · 239 阅读 · 0 评论 -
MyBatis 的工作原理和执行流程
下面对每步流程进行说明。读取 MyBatis 配置文件:mybatis-config.xml 为 MyBatis 的全局配置文件,配置了 MyBatis的运行环境等信息,例如数据库连接信息。加载映射文件。映射文件即 SQL 映射文件,该文件中配置了操作数据库的 SQL 语句,需要在 MyBatis 配置文件mybatis-config.xml 中加载。mybatis-config.xml文件可以加载多个映射文件,每个文件对应数据库中的一张表。构造会话工厂:通过 MyBatis 的环境等配置信息构建原创 2021-09-23 02:40:31 · 143 阅读 · 0 评论 -
MyBatis分页
什么是分页(pagination)例如,在数据库的某个表里有1000条数据,我们每次只显示100条数据,在第1页显示第0到第99条,在第2页显示第100到199条,依次类推,这就是分页。分页可以分为物理分页和逻辑分页。物理分页是利用sql自带的limit去实现的,本身查询出来的数据是就算分页好的;逻辑分页是先查出来,然后利用代码去取需要的部分分页的意义分页确实有效,但它一定会加大系统的复杂度,但可否不分页呢?如果数据量少的话当然可以.但是对于企业信息系统来说数据量不会限制在一个小范围内.如果不顾一切原创 2021-09-22 09:27:48 · 148 阅读 · 0 评论 -
MyBatis学习总结——解决字段名与实体类属性名不相同的冲突
在平时的开发中,我们表中的字段名和表对应实体类的属性名称不一定都是完全相同的,下面来演示一下这种情况下的如何解决字段名与实体类属性名不相同的冲突。数据库中的字段新建一个项目,拷贝之前的,测试实体类字段不一致的情况测试出现问题行查询后返回一个nullsql// select * from mybatis.user where id = #{id}//类型处理器// select id,name,pwd from mybatis.user where id = #{id}解决原创 2021-09-22 02:38:34 · 247 阅读 · 0 评论 -
MyBatis核心组件的作用域和生命周期
MyBatis 有三个基本要素:核心接口和类MyBatis核心配置文件(mybatis-config.xml)SQL映射文件(mapper.xml)生命周期是组件的重要问题,尤其是在多线程的环境中,比如互联网应用、Socket 请求等,而 MyBatis 也常用于多线程的环境中,错误使用会造成严重的多线程并发问题,为了正确编写 MyBatis 的应用程序,我们需要掌握 MyBatis 组件的生命周期。所谓生命周期就是每一个对象应该存活的时间,比如一些对象一次用完后就要关闭,使它们被 Ja原创 2021-09-22 02:17:52 · 160 阅读 · 0 评论 -
Mybatis 全局配置文件详解
全部配置内容MyBatis 配置文件的结构如下。<?xml version="1.0" encoding="utf-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration><!-- 配置 --> <properties />&原创 2021-09-19 08:21:16 · 441 阅读 · 0 评论 -
使用MyBatis对表执行CRUD操作——基于XML的实现
上一篇博文第一个MyBatis程序中我们讲了如何使用Mybatis查询users表中的数据,算是对MyBatis有一个初步的入门了,今天讲解一下如何使用MyBatis对users表执行CRUD操作。本文中使用到的测试环境是上一篇博文中的测试环境。编写interfacepublic interface UserDao { /**执行查询操作,将查询结果自动封装成List<User>返回*/ List<User> getUserList(); /**根据ID原创 2021-09-17 11:17:05 · 172 阅读 · 0 评论 -
第一个MyBatis程序
在实际开发之前,我们必须为 MyBatis 搭建适当的环境。下面介绍 MyBatis 的下载以及目录结构。准备开发环境环境:JDK1.8Mysql 5.7maven 3.6.1IDEAMyBatis下载(多种方式)在 MyBatis 的官方网站,可以下载到最新版本的 MyBatis,这里我使用版本为 MyBatis 3.5.6。如果打不开网站或下载进度较慢,可以通过https://github.com/mybatis/mybatis-3/releases 网址下载。使用 Maven,原创 2021-09-15 10:50:46 · 304 阅读 · 1 评论 -
Mybatis
Mybatis简介MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。MyBatis是什么在移动互联网时代,MyBatis 成为了目前互联网 Java 持久框架的首选。MyBatis 前身为 IBatis,2002 年由原创 2021-09-14 09:49:06 · 178 阅读 · 0 评论