我遇到了这个奇怪的问题,我的merge()或我的persist()函数没有被反映在数据库中。 我JdbcProductDao.java:EntityManager合并/持久性问题
@Repository("productDao")
public class JdbcProductDao implements ProductDao {
@PersistenceContext
private EntityManager entityManager;
public JdbcProductDao(){
}
public Product getReference(Product product){
return getEntityManager().getReference(product.getClass(),product.getId());
}
public void persist(Product product){
getEntityManager().persist(product);
}
public EntityManager getEntityManager(){
return entityManager;
}
public void setEntityManager(EntityManager entityManager){
this.entityManager = entityManager;
}
@SuppressWarnings("unchecked")
public List<Product> getProductList(){
return getEntityManager().createQuery("from Product").getResultList();
}
public void saveProduct(Product product){
persist(product);
}
}
我getProductList()
工作正常,但是我saveProduct没有做任何事情到数据库。
你能想到为什么会发生这种情况?
我会后我的Product.java文件:
@Entity
@Table(name="products")
public class Product implements Serializable {
@Id
@Column(name = "id")
private int id;
@Column(name = "description")
private String description;
@Column(name = "price")
private Double price;
public void setId(int i) {
id = i;
}
public int getId() {
return id;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public Double getPrice() {
return price;
}
public void setPrice(Double price) {
this.price = price;
}
public String toString() {
StringBuffer buffer = new StringBuffer();
buffer.append("Description: " + description + ";");
buffer.append("Price: " + price);
return buffer.toString();
}
}
感谢您的评论,但我决定只是切换到使用jpadaosupport – Albinoswordfish 2010-01-16 17:59:06