一、Statement方式的增删改查 1.映射文件<!-- namespace:该mapper.xml映射文件的 唯一标识 -->
<mapper namespace="org.wuchuan.entity.studentMapper">
<!-- 通过namespace.id调用具体的sql语句-->
<!--parameterType:输入参数的
转载
2024-09-10 10:34:59
16阅读
目录一、MyBatis 基本知识1.1 什么是 MyBatis1.2 MyBatis 的优点1.3 MyBatis 的缺点1.4 MyBatis 适用场合1.5 MyBatis 和 Hibernate 对比二、MyBatis 基本使用2.1 基本使用2.2 POJO2.3 配置指定dao包地址2.4 配置类型别名,减少不断写类路径的麻烦三、MyBatis 连接池和事务3.1 MyBatis 连接池
一、从 MybatisAutoConfiguration 说开去,mapper 文件是怎么扫描的?我们知道配置 SqlSessionFactory 是我们集成 Mybatis 时需要用到的常客,SqlSessionFactory 顾名思义是用来创建 SqlSession 对象的,SqlSession 对象的重要程度不言而喻。源码中提到,SqlSession 是 Mybatis 运行最
转载
2024-06-24 20:05:18
186阅读
零、准备工作mysql mysql-connector-java 8.0.20 org.mybatis mybatis 3.5.5 org.projectlombok lombok 1.18.12 provided一、JDBC的复杂1、概述恶心的一批,缺点贼多我
目录
一、resultType1. 简单类型(掌握)2. 对象类型(掌握)3. Map(了解)二、resultMap(了解)三、实体类属性名和列名不同1. 使用resultMap2. 使用列别名和resultType四、模糊查询like1. 第一种2. 第二种五、总结1. resultType2. resultMap3. 列名和属性名不同4. like 一、resultTy
转载
2024-05-17 08:14:23
290阅读
导包 开发步骤: 创建PO(model)类,根据需求创建; 创建全局配置文件SqlMapConfig.xml; 编写映射文件; 加载映射文件,在SqlMapConfig.xml中进行加载; 编写测试程序,即编写Java代码,连接并操作数据库。创建PO类 在src下,创建SqlMapConfig.xml <?xml version="1.0" encoding="UT
看过之前的蜕变系列文章,相信你对mybatis有了初步的认识。但是这些还不够,我们今天进一步来了解下mybatis的一些用法。我们第一个程序存在很多问题,每一次操作,都需要读取配置文件、初始化mybati框架。这样搞出来的程序上就一个字——渣!这让我想起了多年以前,某个小伙伴告诉我spring的正确使用一样,每次方法都让spring框架重新初始化了一次。哈哈,知道你也在看的,又是一波回忆杀。在第一
转载
2024-03-30 10:07:47
90阅读
单元测试 junit测试 单元测试流程
一、Junit使用步骤:1、创建测试目录,(src、测试目录是test)2、在测试目录test中创建与src中相同的包名3、为需要测试的类创建测试类,例如:UsersMapper,测试类是UsersMapperTest4、为被测试类(UsersMapper)中的需要测试的方法在测试类型创建相应的方法。比
转载
2024-01-30 01:40:05
179阅读
用来循环容器的标签forEach,查看例子foreach元素的属性主要有item,index,collection,open,separator,close。item:集合中元素迭代时的别名,index:集合中元素迭代时的索引open:常用语where语句中,表示以什么开始,比如以'('开始separator:表示在每次进行迭代时的分隔符,close 常用语where语句中,表示以什么结束,在使用
转载
2024-06-06 12:07:45
51阅读
到目前为止,我们介绍的Mybatis种种查询都是一次性的查询出所有结果并返回给上层。但是,在实际开发过程中,在大量数据存在的情况下,是很少这么做的。本文,我们将从逻辑分页,物理分页两种情况出发,分别介绍这两种方式。马上开始我们的正文部分吧。准备工作: a.操作系统 :win7 x64b.基本软件:MySQL,Mybatis,SQLyog ------------------------------
转载
2024-08-14 16:48:19
67阅读
不知道你有没有遇到这种情况,在一个的数据列表中,我们需要对某些数据按条件进行检索,你是否在服务器端里面都要获取条件,并且判断第一个条件是否为空,如果不为空则继续判断第二个条件用户有没有选择,不为空则再继续判断第三个条件是否为空,为空则要写第三个条件的else代码,而且也要写第一和第二条件为空的else语句。并且为其创建对应的业务接口方法及业务实
转载
2024-06-12 21:58:14
3879阅读
1. Mybatis下载MyBatis 的版本可以通过"https://github.com/mybatis/mybatis-3/releases"网址下载。本篇使用 mybatis-3.3.0.zip(可根据需要自行下载)。MySQL驱动Jar包下载:https://github.com/mysql/mysql-connector-j。2. Mybatis概述Mybatis是一款优秀的基于Jav
转载
2024-04-03 16:27:47
160阅读
概述 mybatis使用xml过程中我们经常会遇到要进行动态sql的判断,如使用if标签和choose标签中的when标签,都会遇到test条件判断,test的条件判断采用的ognl语句。 我遇到的坑是这样的:<select id="myFunction">
select * from student where 1=1
<if test="status!=n
转载
2024-05-22 18:22:44
13阅读
MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。 MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBat
转载
2024-10-09 10:29:36
19阅读
利用MyBatis实现CRUD一、查询表记录1.修改UserMapper.xml2.运行测试类testFindAll()3.添加按姓名查询用户记录功能(1)在UserMapper.xmlt添加映射语句-findByName(2)在UserMapper接口里添加findByName()方法(3)在测试类-TestUserMapper里添加测试-testFindByName(4)运行测试testFi
MySQL1.通过SQL语句规范时间格式:select
DATE_FORMAT(t.startTime,"%Y-%m-%d %H:%i") AS startTime,
DATE_FORMAT(t.endTime,"%Y-%m-%d %H:%i") AS endTime
from table2.不存在则插入,存在则更新 不存在则插入,存在则更新的实现方案大致可以分为三种。逻辑控制+SQL语句
mybatis篇125、mybatis中的#{}和${}有什么区别?#{}是先编译sql语句,再拼接条件,${}是先拼接sql语句,再执行编译(会有sql注入)。当我们传入的参数是sql语句的关键字时,比如你传的参数是asc或desc是否升降序时,我们必须要用${},因为关键字在编译的时候必须要有不然会有语法错误。126、mybatis有几种分页方式?物理分页:sql分页逻辑分页:拦截器分页、ro
【】mybatis的if判断单个的字符要写到双引号里面才行,改为或者改为.xml文件的部分代码<insert id="insertDelivery" parameterType="com.zuci.request.DeliveryPreferenceReq">
insert cx_customer_deliverypreference
<tri
转载
2024-10-14 15:13:55
1156阅读
在访问数据库时,需要拼装SQL语句,在Mybatis中提供了对SQL的拼装,只有几个简单的元素:if、test、choose,when,otherwise、where、set、trim、foreach、bind。 用法都十分简单,总结以下基本的用法。 首先准备一实体类public class User {
private int id;
private String na
写在前面由于开源了项目的缘故,很多使用了My Blog项目的朋友遇到问题也都会联系我去解决,有的是把问题留在项目的issue里提出,有的是在我的私人博客里留言,还有的则是直接来找我讲自己遇到的问题,有些问题比较简单直接就解决了,有些问题的解决记录也留在issue记录里,有些则是网上有相关教程,而剩下问题的解决方案,如果时间允许我都会单独的做一篇博客来解答。问题描述当时的聊天记录:截图中提到的代码(