相关疑难解决方法(0)

使用Hibernate注释映射PostgreSQL串行类型

我正在使用Hibernate 3.3和PostgreSQL 8.x,并希望使用Hibernate注释来映射不是主键的自动递增列.

使用SERIAL类型或Postgres中的序列映射列无关紧要,只要它由数据库而不是Hibernate自动递增即可.我尝试了以下映射,但它们始终生成null orderId.

@Column(name = "orderId", insertable = false)
@Generated(GenerationTime.INSERT)
//@GeneratedValue(strategy = javax.persistence.GenerationType.AUTO)
private Integer orderId;
Run Code Online (Sandbox Code Playgroud)

我将不胜感激任何帮助.

谢谢

postgresql hibernate sequence auto-increment

24
推荐指数
3
解决办法
3万
查看次数

非空约束上的休眠 JoinColumn 错误

这是我的课程列表

@MappedSuperclass
public abstract class JpaModel {

    @Id
    @Column(name ="ID", columnDefinition = "serial")
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
}
Run Code Online (Sandbox Code Playgroud)

产品实体

@Entity
@Table(name = "REF_PRODUCT")
public class Product extends JpaModel{

    @Column(name= "NAME")
    private String name;

    @Column(name = "MANUFACTURER")
    private String manufacturer;

    /**
     * Work around for missing
     */
    @OneToOne(optional = true)
    @JoinColumn(name="id")
    private InventoryItemPicture picture;
Run Code Online (Sandbox Code Playgroud)

.... }

和库存物品图片实体

@Entity
@Table(name = "TXN_INVENTORY_PICTURE")
public class InventoryItemPicture extends JpaModel{

    @Column
    private byte[] image;

    @Column
    private String fileName;
Run Code Online (Sandbox Code Playgroud)

保存产品时,inventoryItemPicture 是可选的,因此有时它会是空值,这是我希望发生的事情。但是,在使用空值保存产品实体时,会出现此错误。

Caused by: org.postgresql.util.PSQLException: …
Run Code Online (Sandbox Code Playgroud)

java entity-framework hibernate

1
推荐指数
1
解决办法
4359
查看次数