【问题标题】:Mapping single bean class to multiple tables in hibernate在休眠中将单个bean类映射到多个表
【发布时间】:2015-09-30 13:12:43
【问题描述】:

我开发了一个 spring rest 服务,它将接受一个 json 输入并将详细信息冻结到数据库中并将状态作为 json 输出返回。一切正常。

现在我需要用新的要求更新服务,我将获得用户的地址详细信息,我还需要更新地址表。我的问题是

1) 如何更改输入请求目前我的控制器如下

@Requestmappping(value="/register", metod=RequestMethod.POST)
public @ResponseBody ResponseEntity userRegis(@RequestBody UserBean userdetails){

}

2) 如何更改 UserBean 格式。目前它正在映射到一个表。现在我需要用地址字段更新 bean。我需要将地址字段映射到新表。

请帮忙。

【问题讨论】:

  • 封装来自UserBean的地址信息,创建AddressBean?另请记住,一个用户可能有多个存档地址,并且一个地址可能有多个与之关联的用户。
  • @nixxbb 我目前以 {"challengequestion":"job","challenganswer":"answer"} 的形式提交请求。现在,如果我按照您的建议更新了 bean,如何提供输入请求?
  • 我想太多了,除非您需要验证地址是否已经存在,否则简单的解决方案是像@rohit 所做的那样在用户类中制作地址列表。

标签: java json spring hibernate


【解决方案1】:

您在 OOP 中的组合中指的是什么。所以,基本上用户有一个或多个地址。

class User {
     ....
     private Address addres; 
     //private List<Address> addres;     use something like this if user has multiple addesses    
}

class Address {

}

当然,您不希望将同一个 bean 映射到多个表或类似的东西。上述关系是简单的父子关系。阅读here

【讨论】:

    猜你喜欢
    • 2011-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多