如何使用 MyBatis 3.x 插入对象集合?

2023-11-22

我是 MyBatis 的初学者。

我只想知道如何从类的实例插入对象集合。假设我有一个类 User 与一对多关系中的 Note 相关。我只想提一下,我通过 Hibernate 的 hbm2ddl 使用 JPA 2 注释构建了我的架构。我将添加在下面的示例代码中使用的关键 JPA 注释。

这是一个示例:

@Entity
public class User {
    ...
    @OneToMany
    @JoinColumn(name="user")
    public List<Note> getNotes() {...}
    ...
}

现在,每次我向用户表中插入一些内容时,如果列表不为空,我都必须将实例插入到注释表中。记下注释表中的@JoinColumn,它应该具有插入的用户的ID,我已将其设置为自动生成。

有没有人有这样的工作?谢谢。


当使用常规 MyBatis XML 映射配置时,您可以使用如下内容:

Java类:

class EnclosingType {
  private List<ElementType> elements;
}

class ElementType {
  String a;
  String b;
  (...)
}

映射器 xml:

<mapper
    namespace="my.example.ElementType">
    <insert id="insertElements" parameterType="EnlosingType">
        INSERT INTO ELEMENTTYPE (enclosingTypeId, column_a, column_b)
        VALUES
        <foreach item="element" index="index" collection="elements"
            open="(" separator="),(" close=")">
            #{id}, #{element.a}, #{element.b}
        </foreach>
    </insert>
</mapper>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 MyBatis 3.x 插入对象集合? 的相关文章

  • Sequelize 4.3.2 n:m(多对多)关联:未处理的拒绝 SequelizeEagerLoadingError

    我有 3 个模型 用户 项目 UserProject module exports function sequelize DataTypes var User sequelize define User title DataTypes ST
  • 返回 null 或空集合哪个更好?

    这是一个一般性问题 但我使用的是 C 最好的方法是什么 最佳实践 对于以集合作为返回类型的方法 是否返回 null 或空集合 空集合 总是 这很糟糕 if myInstance CollectionProperty null foreach
  • NHibernate双向多对多映射列表/包

    我正在努力处理双向多对多映射 其中顺序在一侧很重要 但在另一侧则不重要 我有两个班级 项目和学生 一个项目有很多学生 顺序很重要 方案A John Sally Seth 方案B Alex Seth Amy John 一个学生有很多程序 但顺
  • Hibernate3:自引用对象

    需要一些帮助来了解如何执行此操作 我将在文件系统上运行递归 查找 并且希望将信息保留在单个数据库表中 具有自引用的层次结构 这是我想要填充的数据库表结构 目录对象表 id int NOT NULL name varchar 255 NOT
  • 如何在android中使用Room Persistence ORM工具实现created_at和updated_at列

    我该如何实施created at and updated at在Android中使用Room Persistence ORM工具的列 可以在创建或更新表中的行时自动更新时间戳 我研究了很多网站 但仍然没有找到任何可以处理的结果middlew
  • 使用 DataMapper 而不是 ActiveRecord [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 使用 JPA 从集合中删除子项

    我在我的网络应用程序中使用 JPA 而不是 Hibernate 这是两个实体 仅显示 getter class Child private Parent parent ManyToOne optional false JoinColumn
  • 如何在 Hibernate 中持久化非实体子类中的实体

    我试图将一个实体扩展为一个非实体 用于填充超类的字段 问题是 当我尝试保存它时 Hibernate 会抛出 MappingException 这是因为即使我将 ReportParser 转换为 Report 运行时实例仍然是一个 Repor
  • Java重写两个接口,方法名称冲突

    我正在实施Map
  • 为什么Scala语言中的++:运算符这么奇怪?

    我正在使用 运算符来获取两个集合的集合 但是我使用这两种方法得到的结果不一致 scala gt var r Array 1 2 r Array Int Array 1 2 scala gt r Array 3 scala gt r res2
  • 面向对象的数据库是否比带有 ORM 的关系数据库更好?

    只是认为带有 ORM 的关系数据库在很多方面与面向对象的数据库非常相似 我的经验仅在于带有一点 ORM 的 RDMS 所以在我看来 面向对象的数据库非常相似 但没有经验我不能肯定地说 如果您使用过面向对象数据库和 ORM 您能比较它们吗 与
  • 使用 ReadonlyMap 类型

    TypeScript 定义ReadonlyMap
  • 如何在MySQL数据库中插入数据?

    我有一个 ASP NET 应用程序和一个 MySQL 数据库 我想编写一个类来插入 删除和显示数据库中的数据 我有到数据库的连接 但无法在数据库中插入数据 我的班级插入方法 public string CreateEntry string
  • 从MySQL插入查询中获取新记录主键ID?

    假设我正在做一个 MySQLINSERT进入我的一张桌子 该桌子有一列item id设置为autoincrement and primary key 如何让查询输出新生成的主键的值item id在同一个查询中 目前我正在运行第二个查询来检索
  • 哪些 ORM 与 Scala 配合得很好? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • spring+hibernate 没有 xml 的映射类

    在我的 applicationContext xml 中 这就是我将 xml 映射到 POJO 的方式 如何将目录映射到类文件而不需要创建 xml
  • 最好的 Java 集合线程安全锁定机制?

    在 Java 中控制对集合的多次访问的最慢的线程安全机制是什么 我正在将对象添加到集合的顶部 但我非常不确定什么是性能最佳的集合 它是一个向量还是一个队列 我最初认为 ArrayList 会很快 但我进行了一些实验 发现它非常慢 编辑 在我
  • Eclipse 无法识别 persistence.xml 的内容

    我在 eclipse 中收到以下错误 persistence xml 文件没有可识别的内容 我的 persistence xml 文件在我的应用程序中工作得很好 但 eclipse 一直给我这个错误 我在移动文件并使用 m2eclipse
  • 使用 scala 集合 - CanBuildFrom 麻烦

    我正在尝试编写一个接受任何类型集合的方法CC 并将其映射到一个新的集合 相同的集合类型但不同的元素类型 我正在挣扎 基本上我正在尝试实施map but 不在集合本身上 问题 我正在尝试实现一个带有签名的方法 它看起来有点像 def map
  • C# 列表通用扩展方法与非通用扩展方法

    这是一个简单的问题 我希望 集合类中有通用和非通用方法 例如List

随机推荐

  • 自定义 pip install 命令未运行

    我正在尝试为我正在编写的 pip 库运行一些预安装命令 我的安装文件如下所示 from setuptools import setup from setuptools command install import install class
  • 如何对 __m128 类型变量中的浮点元素取反(更改符号)?

    是否有任何单个指令或函数可以反转符号 m128 内的每个浮点数 IE a r0 r1 r2 r3 gt a r0 r1 r2 r3 我知道这可以通过 mm sub ps mm set1 ps 0 0 a 但它不是可能很慢吗 mm set1
  • 在WPF网格中绘制对角线

    我想我正在尝试在 WPF 中做一些相对简单的事情 但我无法弄清楚如何做 我认为我可能正处于将其过于复杂化的边缘 如果我有一个 3 行 3 列的网格 并且我想连接两个单元格的角以创建对角边框 那么最好的方法是什么 理想情况下 如果调整控件的大
  • 在 Angular 8 中,如何从浏览器控制台访问注入的服务?

    我正在使用 Angular 8 我想从浏览器控制台 Chrome 开发工具 访问注入的服务 我可以像这样从浏览器控制台访问注入器 ng probe document querySelector app root injector 我想在开发
  • 声音文件作为 android MediaPlayer 中的变量

    在学习 android java 的过程中 我想创建一个可以从原始文件夹中播放特定声音的函数 我试图将声音文件定义为字符串 以便可以重用该函数 但是我陷入了 无法解析符号 的困境 public class MainActivity exte
  • 与共享主键的一对一关系生成 n+1 个选择;有什么解决方法吗?

    想象一下关系数据库中有 2 个表 例如人员和计费 这些实体之间定义了一个 非强制性 OneToOne 关联 并且它们共享 Person 主键 即 PERSON ID 在 Person 和 Billing 中定义 并且它是后者的外键 通过命名
  • Java Socket和ServerSocket在使用端口上的区别

    在服务器端 我们使用 Socket server serverSocket accept 创建一个套接字 创建套接字后 我们可以创建一个新线程来处理该套接字的输入 输出流 因此 如果有进一步的连接请求进来 我们可以返回监听同一端口并创建新的
  • 这超出了 GitHub 的文件大小限制 [重复]

    这个问题在这里已经有答案了 我的 github 存储库中有一些大文件 我尝试添加 提交 推送 但推送命令给出了以下错误 远程 错误 文件 app dump sql 为 106 67 MB 这超出了 GitHub 的文件大小限制 100 00
  • 创建交互式登录会话

    我正在尝试创建一个类似于微软废弃的实用程序超快速用户切换器 download 它允许快速用户切换 而无需通过欢迎屏幕 我有一个使用未记录的工作实现WinStationConnectWAPI 以及WTSEnumerateSessions 但只
  • Caffe可以直接对图像的像素进行分类吗?

    我想将图像的像素分类为 是街道 或 不是街道 我有一些训练数据KITTI数据集我看到 Caffe 有一个IMAGE DATA图层类型 标签以与输入图像大小相同的图像形式存在 除了 Caffe 之外 我解决这个问题的第一个想法是在应该分类的像
  • 在 M1 Mac 上找不到 PyTables 的 HDF5 安装

    在 M1 Mac macOS Monterey 上运行12 4 Python 3 10 3 pip install tables Collecting tables Using cached tables 3 7 0 tar gz 8 2
  • 我是否必须在 Webstart 应用程序中显式调用 System.exit() ?

    最近我将 Swing 应用程序转换为 Webstart 该过程非常简单 但我发现在关闭所有窗口后 我的应用程序的 JVM 并未终止 线程转储显示有几个非守护线程 特别是 Swing 的 EDT AWT 和几个与 websart 相关的线程
  • 如何隐藏 C++ 中的类?

    假设我有 2 个类 我希望它们可见 在给定的头文件中 还有一个类是它们的祖先 我希望其中一个类仅对前面提到的两个类可见 在C 中如何实现不可见的类功能 滥用class充当namespace会这样做 我不推荐这种模式 class hidden
  • 服务中的 postDelayed()

    我正在尝试在一段时间内自行重新启动服务 我的代码看起来像这样 在onStartCommand Looper prepare Handler handler new Handler handler postDelayed new Runnab
  • 如何在Python中读取格式化输入?

    我想从 stdin 读取输入的五个数字 如下所示 3 4 5 1 8 分成单独的变量 a b c d 和 e 我如何在Python中做到这一点 我试过这个 import string a input b a split 对于两个整数 但它不
  • 如何从 React Native 打开其他应用程序?

    如何从 ReactNative 打开其他应用程序 Gmail 相机 如何将数据从当前场景传递到其他应用程序 我找到了这个 npm 库反应本机应用程序链接可以打开其他应用程序 这是基于深层链接的 如果您有任何深层链接 那么这个库可以提供帮助
  • 摘要式身份验证的概念 - 它真的有效吗?

    据我了解 摘要式身份验证 这是一种单向操作 对密码进行哈希处理并将哈希数据传输到服务器 然后 服务器将使用存储的密码 对其进行哈希处理 并与接收到的哈希密码进行比较 应该可以免受中间人攻击 我不明白的是 如果我是中间人黑客 我不需要原始密码
  • 如何测试ActiveJob是否已入队?

    如果记录成功保存 我有一个创建操作 该操作会调用 ActiveJob def create object Object new importer params respond to do format if object save MyJo
  • Google Apps脚本ScriptApp.getService().getUrl()总是返回错误的URL

    根据文档 此方法应返回 Web 应用程序的 URL 如果已部署 则返回 Web 应用程序的 URL 否则返回 null 如果您正在运行开发模式 Web 应用程序 则返回开发模式 url 我们有一个 Google 日历插件 其中我们使用以下方
  • 如何使用 MyBatis 3.x 插入对象集合?

    我是 MyBatis 的初学者 我只想知道如何从类的实例插入对象集合 假设我有一个类 User 与一对多关系中的 Note 相关 我只想提一下 我通过 Hibernate 的 hbm2ddl 使用 JPA 2 注释构建了我的架构 我将添加在