MyBatis知识点笔记

目录

mybatis mapper-locations的作用?

mybatis configuration log-impl 作用?

resultType和resultMap的区别?

 参数 useGeneratedKeys ,keyColumn,keyProperty作用和用法

取值方式#和$区别

动态标签有哪些

MyBatis常用注解有哪些

注解里直接用动态标签为什么报错

注解方式新增数据后如何回填主键ID值

同一个方法能否既用注解方式又用XML方式

mybatis mapper-locations的作用?

mapper接口与mapper接口对应的配置文件进行一个绑定 如果没有绑定会报错 无效的绑定语句 未

找到 配置扫描路径 

classpath:mapper/*.xml

classpath就是resources *是通配符所有的xml文件

mybatis configuration log-impl 作用?

打印mysql日志 使用

mybatis:configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

就可以将sql打印在控制台

resultType和resultMap的区别?

resultType只要数据库和实体类字段名一样就能查询到数据 但是如果字段名不一样 就会导致有些字段名为null 映射不上

resultMap可以解决数据库表的字段名和实体类属性名不一致的问题

 参数 useGeneratedKeys ,keyColumn,keyProperty作用和用法

在使用mybatis的时候 我们插入数据 我们希望返回主键id 以便后面使用 正常情况是不可能返回的

我们必须要告诉mybatis 并不是返回的是主键 而是将主键的值写入到我们配置的keyProperty

<!-- useGeneratedKeys 插入后返回主键 keyColumn指定数据库主键 
keyProperty指定在Java 实体类中对应的主键 --><insert id="inertPojo" useGeneratedKeys="true" keyColumn="pojo_id" keyProperty="Pojo"><!-- 或者直接不显示的写key(主键) -->insert into tb_pojo(key, param1, param2, ...)values(null, #{param1}, #{param2}, ...)</insert>

取值方式#和$区别

#传入的参数在SQL中显示为字符串,$传入的参数在SqL中直接显示为传入的值.

#方式能够很大程度防止sql注入,$方式无法防止Sql注入;

动态标签有哪些

MyBatis提供了9种动态SQL标签:trim、where、set、foreach、if、choose、when、otherwise、

bind;

MyBatis常用注解有哪些

@Select 查询

@Insert 插入

@Update 修改

@Delete 删除

@Results和@Result 实体类和数据库字段名称不一样时 使用他们来隐射

@Options 添加属性useGeneratedKeys = truekeyProperty = "id"即可在数据添加后获取添加

数据的ID值。

@ResultMap 注解就一个作用,使用已经定义好的@Results或XML配置里已经写好的resultMap。

@One,用于一对一的关系映射

@Many,用于一对多的关系映射

@SelectKey 返回自增id

注解里直接用动态标签为什么报错

要加上script标签 成为脚本sql

注解方式新增数据后如何回填主键ID值

使用@Options 添加属性useGeneratedKeys = truekeyProperty = "id"即可在数据添加后获取

添加数据的ID值。

同一个方法能否既用注解方式又用XML方式

不能  只能在注解和xml方式二选一

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

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

相关文章

关于 VRRP的详解

VRRP&#xff08;Virtual Router Redundancy Protocol&#xff0c;虚拟路由器协议&#xff09;是一个用于提高网络可靠性和可用性的协议。它通过允许多个路由器&#xff08;物理设备&#xff09;在同一网络中共享一个虚拟IP地址&#xff0c;从而提供了冗余这样&#xff0c;即使…

datax与sqoop的优缺点?

DataX 的优缺点 优点 多种数据源支持&#xff1a;DataX 是一个开源的数据同步工具&#xff0c;它支持多种数据源之间的数据传输&#xff0c;包括关系型数据库&#xff08;如 MySQL、Oracle、SQL Server 等&#xff09;、非关系型数据库&#xff08;如 HBase、Hive、Elasticsear…

FreePBX修改IP地址和端口以及添加SSL证书开启HTTPS访问

最近给单位部署了freepbx网络电话系统&#xff0c;我的系统是安装在ibm x3650 m4物理机上的&#xff0c;iso镜像下载后直接用Rufus烧录到U盘&#xff0c;服务器上先做好了raid1&#xff0c;插上U盘重启服务器开撸。安装过程略过了&#xff0c;在虚拟机上安装就不用那么麻烦。 …

FastAPI vs Flask 专业对比与选择

FastAPI与Flask是两个流行的Python Web框架&#xff0c;它们在构建Web应用程序和API方面各有特点。以下是对这两个框架的详细比较&#xff1a; 一、设计理念与用途 Flask&#xff1a; 是一个轻量级的Python Web框架&#xff0c;基于Werkzeug WSGI工具箱和Jinja2模板引擎。设计…

20241218-信息安全理论与技术复习题

20241218-信息安全理论与技术复习题 一、习题1 信息安全的基本属性是&#xff08;D )。 A、机密性 B、可用性 C、完整性 D、上面 3 项都是 “会话侦听和劫持技术” 是属于&#xff08;B&#xff09;的技术。 A、 密码分析还原 B、 协议漏洞渗透 C、 应用漏洞分析与渗透 D、 D…

Android `android.graphics.drawable` 包深度解析:架构与设计模式

Android android.graphics.drawable 包深度解析:架构与设计模式 目录 引言Drawable 概述Drawable 的架构 Drawable 类层次结构Drawable 的核心方法Drawable 的设计模式 装饰者模式工厂模式状态模式常用 Drawable 子类解析 BitmapDrawableShapeDrawableLayerDrawableStateList…

顶顶通呼叫中心中间件的三种呼叫方式(mod_cti基于FreeSWITCH)

顶顶通呼叫中心共有三种呼叫方式&#xff1a; 手拨呼叫点击呼叫自动外呼 联系我们 有意向了解呼叫中心中间件的用户&#xff0c;可以点击该链接添加工作人员&#xff1a;https://blog.csdn.net/H4_9Y/article/details/136148229 手拨呼叫 手拨呼叫属于常规的呼叫方式&…

C 语言中 strlen 函数的深入剖析

目录 一、strlen 函数的基本介绍 二、strlen 函数的工作原理 三、strlen 函数的使用注意事项 四、strlen 与其他字符串处理函数的结合使用 五、strlen 在实际编程中的应用场景 六、总结 在 C 语言的编程世界里&#xff0c;strlen函数是一个经常被使用但又容易被误解的重要…

Redis 实战篇 ——《黑马点评》(上)

《引言》 在进行了前面关于 Redis 基础篇及其客户端的学习之后&#xff0c;开始着手进行实战篇的学习。因内容很多&#xff0c;所以将会分为【 上 中 下 】三篇记录学习的内容与在学习的过程中解决问题的方法。Redis 实战篇的内容我写的很详细&#xff0c;为了能写的更好也付出…

深入解析Spring Boot中的@ConfigurationProperties注解

深入解析Spring Boot中的ConfigurationProperties注解 在Spring Boot框架中&#xff0c;配置管理是一个核心功能。Spring Boot提供了多种方式来处理外部配置&#xff0c;其中ConfigurationProperties注解是一个非常强大且灵活的工具。本文将深入探讨ConfigurationProperties注…

文档解析丨高效准确的PDF解析工具,赋能企业非结构化数据治理

在数据为王的时代浪潮中&#xff0c;企业数据治理已成为组织优化运营、提高竞争力的关键。随着数字化进程的加速&#xff0c;企业所积累的数据量呈爆炸式增长&#xff0c;数据类型也愈发多样化&#xff0c;这些数据构成了现代企业数据资产的重要组成部分。 然而&#xff0c;传…

支持最新 mysql9的workbench8.0.39 中文汉化教程来了

之前在 B 站上发布了 mysql8 workbench 汉化教程&#xff0c;一年多来帮助很多初学者解决了不熟悉英文的烦恼。 汉化视频可以访问&#xff1a; 2024最新版mysql8.0.39中文版mysql workbench汉化 中文升级 旧版汉化报错解决_哔哩哔哩_bilibili MySql Workbench汉化_哔哩哔哩_…

02-18.python入门基础一基础算法

&#xff08;一&#xff09;排序算法 简述&#xff1a; 在 Python 中&#xff0c;有多种常用的排序算法&#xff0c;下面为你详细介绍几种常见的排序算法及其原理、实现代码、时间复杂度以及稳定性等特点&#xff0c;并对比它们适用的场景。 冒泡排序&#xff08;Bubble Sor…

STM32高级 WiFi案例2:TCP通讯

ESP32支持的WIFI工作模式 在实现TCP的通讯案例之前我们需要先了解下ESP32支持的工作模式。 1》基站模式/STA模式 在 ESP32&#xff08;一款集成 Wi - Fi 和蓝牙技术的低成本、低功耗微控制器芯片&#xff09;中&#xff0c;基站模式&#xff08;Station 模式&#xff09;是指…

华为 IPD,究竟有什么特点?(一)

关注作者 &#xff08;一&#xff09;华为版 IPD 特点一&#xff1a;一定要让研发转身为作战 部队 冲到前台的研发&#xff0c;应主动拉通公司上下游&#xff0c;向前抓需求&#xff0c;向后支撑可制造性、可 服务性&#xff0c;并推动制造、服务的改进。 1&#xff09;研发从…

机器学习详解(11):分类任务的模型评估标准

模型评估是利用不同的评估指标来了解机器学习模型的性能&#xff0c;以及其优势和劣势的过程。评估对于确保机器学习模型的可靠性、泛化能力以及在新数据上的准确预测能力至关重要。 文章目录 1 介绍2 评估准则3 分类指标3.1 准确率 (Accuracy)3.2 精确率 (Precision)3.3 召回率…

已有docker镜像构建过程分析

1.使用docker history进行分析   docker history 命令用于查看指定镜像的历史层信息,它显示了镜像创建过程中的每一层,包括创建时间、创建者、大小和注释等信息。 查看镜像历史 docker history myimage:latest 使用示例: root@controller1:~# docker images | grep zj_j…

【Mac】终端改色-让用户名和主机名有颜色

效果图 配置zsh 1.打开终端&#xff0c;进入.zshrc配置 cd ~ vim .zshrc2.添加如下配置并保存 # 启用命令行颜色显示 export CLICOLOR1 ## 加载颜色支持 autoload -U colors && colors # 配置 zsh 提示符 PROMPT"%{$fg_bold[red]%}%n%{$reset_color%}%{$fg_bol…

【Artificial Intelligence篇】智行未来:AI 在日常出行领域的崛起征程

目录 ​编辑 一、引言&#xff1a; 二、AI 在日常出行中的关键技术应用&#xff1a; 2.1自动驾驶技术&#xff1a; 2.2智能交通管理&#xff1a; 2.3出行辅助系统&#xff1a; 三、AI 在日常出行领域的发展现状&#xff1a; 四、AI 在日常出行领域的未来前景&#xff…

指针之矢:C 语言内存幽境的精准飞梭

一、内存和编码 指针理解的2个要点&#xff1a; 指针是内存中一个最小单元的编号&#xff0c;也就是地址平时口语中说的指针&#xff0c;通常指的是指针变量&#xff0c;是用来存放内存地址的变量 总结&#xff1a;指针就是地址&#xff0c;口语中说的指针通常指的是指针变量。…