相关疑难解决方法(0)

Hibernate:一对一延迟加载,可选= false

我遇到的问题是一对一的延迟加载在休眠中不起作用.我已经解决了,但仍然没有正确理解会发生什么.

我的代码(延迟加载在这里不起作用,当我拉人 - 地址也被提取):

@Entity
public class Person{

  @Id
  @SequenceGenerator(name = "person_sequence", sequenceName = "sq_person")
  @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "person_sequence")
  @Column(name = "id")
  private long personID;

  @OneToOne(mappedBy="person", cascade=CascadeType.ALL, fetch = FetchType.LAZY)
  private Adress address;
  //.. getters, setters
}

@Entity
public class Address {

  @Id
  @Column(name="id", unique=true, nullable=false)
  @GeneratedValue(generator="gen")
  @GenericGenerator(name="gen", strategy="foreign", parameters=@Parameter(name="property", value="person"))
  private long personID;

  @PrimaryKeyJoinColumn
  @OneToOne
  private FileInfo person;
}
Run Code Online (Sandbox Code Playgroud)

但是:如果我添加optional=falseOneToOne关系,延迟加载工作正常!

@OneToOne(mappedBy="person", cascade=CascadeType.ALL, …
Run Code Online (Sandbox Code Playgroud)

hibernate jpa lazy-loading one-to-one

58
推荐指数
2
解决办法
5万
查看次数

@ManyToOne(可选= false)与@Column(nullable = false)之间的区别是什么?

在JPA中,我很困惑何时使用属性optional=false和注释@Column(nullable=false).有什么不同?

java orm hibernate jpa

53
推荐指数
2
解决办法
5万
查看次数

@ManyToOne(fetch = FetchType.LAZY)不适用于非主键引用列

我有一些麻烦要让@ManyToOne关联加载lazilly.我正在使用fetch = LAZY但是当主键列没有进行连接时它不起作用.

我知道这个问题已被提出但我认为没有得到妥善回答,因此我提供了详细信息以澄清问题.

这是我的模特:

DummyB -> DummyA
Run Code Online (Sandbox Code Playgroud)

这些是表格:

create table dummyA  (
  id number(18,0), --pk
  name varchar2(20) -- unique field
);

create table dummyB  (
  id number(18,0),
  dummya_id number(18,0),
  dummya_name varchar2(20)
);
Run Code Online (Sandbox Code Playgroud)

这些是实体:

@Entity
public class DummyA implements Serializable {

    private Long id;
    private String name;

    @Id
    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = …
Run Code Online (Sandbox Code Playgroud)

hibernate jpa

11
推荐指数
3
解决办法
7612
查看次数

标签 统计

hibernate ×3

jpa ×3

java ×1

lazy-loading ×1

one-to-one ×1

orm ×1