我有一个带有主表(A)的ERD,它有一个属性(String),它是另一个表(B)的FK。
我遇到的问题是B中唯一的属性是PK;我只想确保用户只输入主表属性中的一个允许值。我甚至不想从应用程序更新B表,因为这将是一个非常不寻常的任务,我将直接在数据库中执行。
我可以将B视为另一个实体,并用“常规”JPA处理它们,但我有点困扰,也许有更有效的方法来实现它*。我想从B表中得到的只是获取完整的值列表并确保属性值是正确的。
所以问题是:JPA中有一个特定的模式来处理那些主表吗?
提前致谢。
*:我关心的是在每次创建实体B对象时,创建/检索实体B对象,每次创建实体A对象时都会检索它。
答案 0 :(得分:1)
我只是使用本机查询来获取B
表中的所有字符串,或者将B映射为实体以使用JPQL查询检索所有B字符串,但是没有从A到B的任何关联
B字符串将存储为实体A
中的基本字符串列。如果您尝试使用不在A
表中的字符串创建或更新B
实例,那么您将在刷新或提交时获得异常,因为外键约束已被破坏。 / p>