我有一个Java EE应用程序,它运行在tomcat上,带有几个实体类,并使用eclipselink 2.1和jpa 2.0.实体是EmailNotification和EmailNotificationQueueRow.
@Entity
public class EmailNotification implements Serializable, IEntity<Integer> {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO, generator = "emailGen")
@SequenceGenerator(name = "emailGen", sequenceName = "SQ_EMAIL_NOTIFICATIONS", allocationSize=1)
@Basic(optional = false)
@Column(name = "EMAIL_ID")
private Integer emailId;
@Basic(optional = false)
@Column(name = "EMAIL_SUBJECT")
private String emailSubject;
@Basic(optional = false)
@Column(name = "EMAIL_BODY")
private String emailBody;
@Basic(optional = false)
@Column(name = "SENT_FROM_EMAIL_ADDRESS")
private String sentFromEmailAddress;
@Column(name = "SEND_TO_ORG_ID")
private Integer sendToOrgId;
@Column(name = "SEND_TO_EMAIL_ADDRESS")
private String …Run Code Online (Sandbox Code Playgroud) 只是一个简单的问题,但是这段代码中需要刷新吗?请注意,这将在JPA事务中.
User user = new User();
em.persist(user);
em.flush;
User aUser = em.find(User.class,user.getId());
assert(user.equals(aUser));
Run Code Online (Sandbox Code Playgroud)
或者没有冲洗它会工作吗?
User user = new User();
em.persist(user);
User aUser = em.find(User.class,user.getId());
assert(user.equals(aUser));
Run Code Online (Sandbox Code Playgroud)
或者相同的问题,但更多涉及的例子:
User user = em.find(User.class,id);
user.setName("My Name");
em.merge(user);
em.flush; //Is this line needed?
User aUser = em.createQuery("select u from User where u.name = 'My Name');
assert(user.equals(aUser));
Run Code Online (Sandbox Code Playgroud)