MyBatis
MyBatis相关技术梳理
little_fat_sheep
图形学领域爱好者,未来将在图形渲染(OpenGL、LibGDX、Filament、Unity3D、UE)、图形编解码(FFmpeg)等领域长期深耕。
展开
-
【MyBatis】整合spring、springMVC、MyBatis框架
1 前言在使用监听器整合spring和springMVC中介绍了spring 和 springMVC 框架的整合,本文将介绍 spring、springMVC、MyBatis 3个框架的整合(即SSM框架),主要思想是:将 springMVC 和 MyBatis 框架的部分配置交给 spring 容器管理。spring、springMVC、MyBatis 的分工如下:spring:负责 service、bean 等 springMVC:负责控制层,拦截器、MVC 驱动、视图解析器等 My..原创 2020-06-23 11:31:25 · 222 阅读 · 0 评论 -
【MyBatis】分页插件PageHelper
1 前言MyBatis 通过PageHelper 可以很方便地实现分页查询,通过获取 PageInfo 对象实现分页管理。获取 PageInfo 的方法如下:PageHelper.startPage(pageNum, pageSize); List<Student> list=mapper.selectAll();PageInfo<Student> pageInfo=new PageInfo(list);//PageInfo<Student> page.原创 2020-06-20 18:00:35 · 625 阅读 · 0 评论 -
【MyBatis】逆向工程
1 前言MyBatis 逆向工程是指自动生成 JavaBean、映射文件、mapper 接口。以数据库中 students 表为例,逆向工程将生成Student.java、StudentMapper.xml、StudentMapper.java 3个文件。2 实验环境(1)导入 JAR 包其中,前3个 jar 包下载地址见 →log4j-1.2.17.jar、mybatis-3.4.1.jar、mybatis-generator-core-1.3.2.jar,将 jar 包放入 li..原创 2020-06-19 22:34:56 · 274 阅读 · 0 评论 -
【MyBatis】批量操作
1 批量查询1.1 方法一(String)(1)SQL 语句select sid,sname,sex from students where sid in (1005,1006,...)(2)用法<!-- public List<Student> batchQueryByString(String ids);//批量查询(通过String) --><select id="batchQueryByString" resultType="com.bean.原创 2020-06-17 17:30:31 · 1064 阅读 · 0 评论 -
【MyBatis】sql、if、choose、where、set、trim标签
1 前言动态 SQL 是MyBatis 强大特性之一,主要包含sql、if、choose、where、set、trim、foreach 等标签,本文仅介绍前6个标签的用法,对于 foreach 标签的用法,将在下一个专题介绍。<sql>:定义 SQL 片段,通过 <sql id="sql_id"></sql>定义SQL片段,<include refid="sql_id"/> 引用定义好的片段 <if>:条件语句,用法:<if t..原创 2020-06-14 22:50:44 · 647 阅读 · 0 评论 -
【MyBatis】一对多查询
1 实验环境本文以Clazz (one)——Student (many)为例,介绍 MyBatis 中,一对多查询。(为避免与系统中的 java.lang.Class 类同名,将班级类定为 Clazz)。(1)导入 JAR 包其中,前2个 jar 包下载地址见 →log4j-1.2.17.jar、mybatis-3.4.1.jar,将 jar 包放入 lib 目录下,并选中所有 jar 包,右键,选择【Add to Build Path】。(2)工作目录注意:src...原创 2020-06-14 10:16:16 · 309 阅读 · 0 评论 -
【MyBatis】多对一查询
1 实验环境本文以 Student (many)——Class (one) 为例,介绍 MyBatis 中,多对一查询。(1)导入 JAR 包其中,前2个 jar 包下载地址见 →log4j-1.2.17.jar、mybatis-3.4.1.jar,将 jar 包放入 lib 目录下,并选中所有 jar 包,右键,选择【Add to Build Path】。(2)工作目录注意:src 和 conf 目录下的 com.mapper 包必须同名;ClassMapper.jav...原创 2020-06-13 18:59:16 · 270 阅读 · 0 评论 -
【MyBatis】使用#{}与${}获取参数
1 前言MyBatis 的映射文件中,获取参数的方式主要有 ${ } 与 #{ },主要区别如下:${}:字符串替换,使用 Statement 方式操作 SQL,在为 String 类型变量赋值时,需要手动加单引号,没有预编译,不可以防止 SQL 注入; #{}:参数占位符,使用 PreparedStatement 方式操作 SQL,在为 String 类型变量赋值时,可以自动加单引号,有预编译,可以防止 SQL 注入;一般建议使用 #{},但在模糊查询和批量删除时,建议使用 ${}。由于 #{原创 2020-06-12 17:16:28 · 1335 阅读 · 0 评论 -
【MyBatis】查询方式汇总
1 实验环境(1)导入 JAR 包其中,前2个 jar 包下载地址见 →log4j-1.2.17.jar、mybatis-3.4.1.jar,将 jar 包放入 lib 目录下,并选中所有 jar 包,右键,选择【Add to Build Path】。(2)工作目录注意:src 和 conf 目录下的 com.mapper 包必须同名。(3)配置文件log4j.xml<?xml version="1.0" encoding="UTF-8"?><...原创 2020-06-12 13:21:38 · 346 阅读 · 0 评论 -
【MyBatis】通过package管理映射文件的引入
1 前言在核心配置文件(mybatis-config.xml)中,引入映射文件(如:StudentMapper.xml)的方法如下。其缺点是:当映射文件较多时,需要引入的映射文件也较多,使得 mybatis-config.xml 文件代码量剧增。<!-- 引入映射文件 --><mappers> <mapper resource="StudentMapper.xml"/></mappers>通过 package 管理映射文件的引入,能够避免原创 2020-06-11 21:54:41 · 1694 阅读 · 1 评论 -
【MyBatis】增删改查(CRUD)
1 实验环境(1)导入 JAR 包其中,前2个 jar 包下载地址见 →log4j-1.2.17.jar、mybatis-3.4.1.jar,将 jar 包放入 lib 目录下,并选中所有 jar 包,右键,选择【Add to Build Path】。(2)工作目录(3)配置文件log4j.xml<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE log4j:configuration SYSTEM "lo..原创 2020-06-11 19:33:14 · 262 阅读 · 0 评论 -
【MyBatis】第一个案例
1 前言MyBatis 是 Apache 开发的基于 Java 的持久层框架,包括 SQL Maps 和 Data Access Objects(DAO),其前称为 iBatis(源于internet 和 abatis 的组合),在 iBatis 3.x 版本之后,更名为MyBatis。2 实验环境(1)导入 JAR 包其中,前2个 jar 包下载地址见 →log4j-1.2.17.jar、mybatis-3.4.1.jar(2)工作目录(3)配置文件log4j.xm..原创 2020-06-11 17:30:03 · 221 阅读 · 0 评论