【mybatis generator实战】 1.crud 2.计数 3.自定义复杂mapper代码组织

news2024/11/14 4:00:35

1.计数

 2.CRUD


注意:

insert:一个必须全部有值。 insertSelective是:部分有值就行,用的较多。
有疑问可以看源码,发现xxxSelective就是拼接了一些参数。

 注意:

4个更新方法:
        updateByExample // 全部有值
        updateByExampleSelective // 只更新有值的字段 

        updateByPrimaryKey  // 所有字段都进行更新操作,条件是key相等、

可以发现:Example其实就是构建sql语句。然后加上后面的条件拼接。


不加条件是很危险的。所有的数据都会进行set操作!!!


有疑问,都可以点进去看mapper xml的源码。

基本上工作中都是Selective的方法,updateByExample 和 updateByPrimaryKey   用的很少。
 

查 // 包括分页查询

使用PageHelper实现带分页的查询

3.自定义复杂sql // 写在my文件夹下

自己新建my文件夹,里面写XxxMapper

自己新建my文件夹,里面写XxxMapper.xml

总结:

1.Example其实就是创建一个啥条件也没写的sql语句。

2.example.createCriteria()就是写各种条件,支持链式调用。

3.尽量用Selective方法,这样子无需所有字段都有,而且有返回值

总体来说,使用example,大大减轻了mysql写sql语句开发的负担。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/132082.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

QML学习笔记【06】:QML与C++交互

1 QML端直接调用C端变量及函数 1、 创建继承自QObject的C类,对象必须继承自QObject才能在QML被使用和访问 2、在类定义中使用Q_PROPERTY导出成员的READ、WRITE、NOTIFY接口,这样类中的成员变量就可以在QML调用和修改了,同时变量被修改后也会…

剑指 Offer 18. 删除链表的节点

一、题目描述 给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。 返回删除后的链表的头节点。 示例 1: 输入: head [4,5,1,9], val 5 输出: [4,1,9] 解释: 给定你链表中值为 5 的第二个节点,那么在调用了你的函数之后&#xf…

2022年最后一篇推文 | C语言编程十诫

正文大家好,我是bug菌~2022年最后一篇推文原本选择一篇年终总结会比较合适,然而坐在窗台,望着窗外思索了良久,与往年总结有点不同,这个时间节点有着他的特殊性,不出意外,明年会有非常多的变化、…

OpenShift 4 - 用 HyperShift 实现以“托管集群”方式部署运行 OpenShift 集群

《OpenShift / RHEL / DevSecOps / Ansible 汇总目录》 说明:本文已经在 OpenShift 4.11 ACM 2.6 AWS 环境中验证 文章目录用 HyperShift 实现 OpenShift 托管集群什么是 HyperShift 托管集群以及架构HyperShift 托管集群的价值成本优势部署优势管理优势在 RHACM …

【Kaggle】Global Wheat Detection

代码链接 实验目的 小麦来自世界各地。密度的小麦植株经常重叠;风会使得照片模糊;外观会因成熟度,颜色,基因型和头部方向而异。使用图像处理和目标检测完成小麦头的位置的标定。完成训练并现场验证后上传指定的输出文件进行验证…

大数据NiFi(三):NiFi关键特性

文章目录 NiFi关键特性 一、​​​​​​​​​​​​​​流管理

人工智能轨道交通行业周刊-第28期(2022.12.26-2023.1.1)

本期关键词:NOCC、车站闸机、雾闪、2022年度盘点、智慧园区 1 整理涉及公众号名单 1.1 行业类 RT轨道交通中关村轨道交通产业服务平台人民铁道世界轨道交通资讯网铁路信号技术交流北京铁路轨道交通网上榜铁路视点ITS World轨道交通联盟VSTR铁路与城市轨道交通Rai…

安全—01day

DNS 域名解析过程: 1.浏览器首先查询浏览器的缓存,因为浏览器会按照一定的频率缓存 DNS 记录 2.若浏览器无缓存,那么查询操作系统的 HOST 文件,查询是否有 DNS 记录。 3.若还没有命中域名,就请求本地域名服务器该服务器一般都会缓…

Qt音视频开发07-合并音视频文件

一、前言 之前已经把音视频分开存储了对应的文件,因为这个需求特别少,当然确实有部分用户是需要把音视频分开存储,但是毕竟是很少数,绝大部分的用户都是音视频合并到一个MP4文件,所以如果要合并到一个文件&#xff0c…

二进制与十六进制的相互转换;按位操作:与() 和 或(|)

目录 一、二进制转换十六进制 二、十六进制转换二进制 三、按位操作:与(&) 和 或(|) 1、按位与(&)操作 2、按位或(|)操作 得出结论:清0用与&am…

【金猿案例展】海尔集团——追光AI-AOI赋能PCBA缺陷检测

‍数之联案例本项目案例由数之联投递并参与“数据猿年度金猿策划活动——《2022大数据产业年度创新服务企业》榜单/奖项”评选。‍数据智能产业创新服务媒体——聚焦数智 改变商业AOI(Automated Optical Inspection缩写)的中文全称是自动光学检测。通过…

className 还能这么用,你学会了吗

抛出问题 className大家都用过吧,用它在react项目中设置样式。它的用法很简单,除了可以设置一个样式外,react中也可以使用className引入多个类样式。 这次在写项目的时候,碰到一个非常小但是当时却一直解决不了的问题。后面在复…

python基础语法25-进程理论

一、简介 服务器为了能够同时为多个客户端服务,则需要能够同时处理多个网络连接的方法。python提供了3个主要的方法来实现这个目的,multiprocessing、threading和异步I/O。 今天主要说一下进程multiprocessing。 multiprocessing是一个和threading(多线程)类似的库,这个多…

【MVC和三层架构】联系、区别以及简单实践

MVC架构模式MVC架构模式概述引入MVCMVC和三层架构之间的联系和区别三层架构与MVC联系和区别银行转账小项目实践MVC架构模式概述 MVC架构模式是软件架构中的一个架构模式。 M(Model:数据/业务) V(View:视图/展示&#x…

深入xJavaFxTool的插件开发模式

背景 时光华丽丽的来到了2023年,首先在这里祝大家新年快乐,希望大家在新的一年里都能心想事成,万事如意,最重要的是身体健康。过去的2022年里,大家一定都是收获满满。不论是技术的,家庭的,事业的…

【C++】map 与 set 的介绍与使用

目录 一、关联式容器 二、键值对 三、set 3.1 set 的介绍 3.2 set 的使用 3.3. set 的使用举例 四、map 4.1 map的介绍 3.2 map 的使用 4.3 map的使用举例 五、经典练习题 1.set的使用 2.map的使用 思路一(稳定排序): 思路二(priority_queue)&#x…

LabVIEW使用共享变量在两台计算机之间进行通信

LabVIEW使用共享变量在两台计算机之间进行通信 需要选择一台计算机作为服务器并发布变量,而另一台计算机作为客户端接收变量。然后,按照以下步骤设置服务器和客户端计算机。 服务器机器: 创建LabVIEW项目并通过右键单击“我的电脑”并选择…

opencv-python常用函数解析及参数介绍(六)——图像梯度

图像梯度前言Sobel算子算子的定义Sobelx效果演示Sobely效果演示完整轮廓直接计算复杂图片的轮廓Scharr算子与laplacian算子scharr算子的定义laplacian算子定义三种算子的效果对比结尾前言 前面的文章中我们介绍了用膨胀和腐蚀得到了图像轮廓,图像梯度也是一种可以得…

五年六次

今天是 2022 年的最后一天,可算等来了。讽刺的是,就在昨天,小号写了篇文章,啥主题就不说了,然后晚上文章被删了,账号居然也被封了。2022 全年虽然我写过很多文章都被和谐了,但是最后一天喜提封号…

二、Django

Django 提示:本文根据b站黑马python课整理 链接指引 > 黑马程序员python企业级开发项目-手把手从0到1开发《美多商城》 文章目录DjangoMVT图解项目准备1.创建项目2.创建应用3.更换python解释器4.安装应用5.本地化6.项目中匹配urls7.应用中匹配urls.py8.准备视图…