【问题标题】:Spring request bind and hibernate presistSpring请求绑定和休眠持久化
【发布时间】:2013-04-16 11:30:44
【问题描述】:

对于 Spring MVC 应用程序,配置了带有休眠功能的 ORM jpa。每个请求都将以通常的形式提交,响应将是 json,因此配置 Jackson Json 并使用 @ResponseBody 。除了实体的多对一映射之外,一切都运行良好。

public class Supplier implements BaseEntity{
    @Id
    @GeneratedValue(strategy= GenerationType.AUTO)
    private Integer id;
    private String name;

    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "bank_id", nullable = false)
    private Bank bank;
    /*
     all getters and setters
      */
}

银行实体

@Entity
@Table(name="bank_tbl", uniqueConstraints=@UniqueConstraint(columnNames="name_bank"))
public class Bank implements BaseEntity{

    @Id
    @GeneratedValue(strategy= GenerationType.AUTO)
    @Column(name="bank_id")
    private Integer id;

    @Column( nullable=false)
    private String name;

    @Column(name="desc_bank", columnDefinition="TEXT")
    private String desc;
    /*
     all getters and setters
      */
}

样品请求

id:1 姓名:“史蒂夫”银行:4

第一个困惑是如何将请求中存在的银行 ID 值绑定到实体。其次,在绑定后是否以任何特殊方式来保存 entityManager.merge(supplier); 以外的 Supplier 实体。如何仅使用 bank_id 检索供应商 json。 实体本身是否需要更改才能满足此要求?

【问题讨论】:

    标签: jpa spring-mvc jackson hibernate-mapping


    【解决方案1】:

    您可能想查看 Jackson 中的自定义序列化器/反序列化器:http://blog.palominolabs.com/2012/06/05/writing-a-custom-jackson-serializer-and-deserializer/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-09
      相关资源
      最近更新 更多