我的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”时,它返回正确的行。
答案 0 :(得分:1)
您的entityManager
是null
。这就是您拨打NullPointerException
方法时获得em.find()
的原因。