Spring Data JDBC保存到两个表

问题描述

如何使用Spring Data JDBC将实体同时保存到两个表中?

class MyEntity {
  /* to be saved in table #1 */
  int ID; /* auto-generated in table #1 */
  String name;
  /* to be saved in table #2 */
  int titleID; /* auto-generated in table #2 */
  String title;
}

我是Spring的新手。我花了两天的时间来了解如何使用Spring Data JDBC进行INNER JOIN查询

解决方法

Spring Data JDBC中对此没有特殊支持。

您可以执行以下操作之一:

  1. 在两个表上创建一个可更新的视图,该视图将两个表连接在一起并将您的实体映射到该视图。为了能够更新两个表,您可能必须向视图添加触发器,具体取决于数据库的功能。

  2. 您可以将实体按1:1关系拆分为两个实体,每个实体都保存在一个表中。