我是学习 Java EE 的新手,仍然有很多概念让我感到困惑。我发现一个实体类看起来像一个 JavaBean。
- 实体类是 JavaBean 吗?(请在这里解释一下)
- 实体类和JPA有什么关系?(我的理解:JPA 是一种与实体类一起使用的技术/API,它保留数据库中的数据吗?)
我是学习 Java EE 的新手,仍然有很多概念让我感到困惑。我发现一个实体类看起来像一个 JavaBean。
严格来说,@Entity
它不是 JavaBean(JavaBean 约定需要一个公共的无参数构造函数,@Entity
可以有受保护的等)但它们非常相似。@Entity
实际上是一个 POJO(Plain Old Java Object)。您可以比较 JavaBeans 和 Entity 类的约定和要求:
带有注释的类@Entity
通常表示关系数据库中的表。您可以通过 JPA 使用它们对数据库执行插入/更新/.. 操作。一个例子:
UserTransaction utx;
EntityManager em;
//initialization of entity manager..
utx.begin();
YourEntity entity = new YourEntity(); //your @Entity annotated class
entity.setSomeParam(someValue);
em.persist(entity);
utx.commit();
也可以看看: