EntityManager.find(MyClass.class,id)返回null

时间:2014-10-30 11:49:26

标签: java-ee jpa nullpointerexception entitymanager

我的entitymanager.find()给出了nullpointerexception,数据库中有一行提供了id。

@Entity
public class ForumCategory implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@Column (name="title")
private String title;
@Column (name="datecreated")
private Date created;
@Column (name="dateupdated")
private Date updated;  
@Column (name="createdby")
private String createdBy;
@OneToMany(mappedBy="category")
private Set<ForumThread> threads;

这是find方法

public ForumCategory find(Long id) {
    ForumCategory category = em.find(ForumCategory.class, id);
    return category;
}

我尝试过使用但仍然出错。

em.createQuery("SELECT obj FROM ForumCategory obj WHERE obj.id=1")

我正在使用MySqlWorkbench,当我运行“select * from forumcategory where id = 1”时,它返回正确的行。

1 个答案:

答案 0 :(得分:1)

您的entityManagernull。这就是您拨打NullPointerException方法时获得em.find()的原因。