package db.test; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.EntityTransaction; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.Persistence; @Entity(name="Tests") public class DBTest { private int id; private String text1; private String text2; private int i1; private int i2; @Id @GeneratedValue @Column(name="id") public int getId() { return id; } public void setId(int id) { this.id = id; } @Column(name="text1",length=100) public String getText1() { return text1; } public void setText1(String text1) { this.text1 = text1; } @Column(name="text2",length=65535) public String getText2() { return text2; } public void setText2(String text2) { this.text2 = text2; } @Column(name="i1",length=10) public int getI1() { return i1; } public void setI1(int i1) { this.i1 = i1; } @Column(name="i2",length=10) public int getI2() { return i2; } public void setI2(int i2) { this.i2 = i2; } public DBTest() { } public DBTest(String text1, String text2, int i1, int i2) { setText1(text1); setText2(text2); setI1(i1); setI2(i2); } public DBTest clone() { DBTest clone = new DBTest(getText1(),getText2(),getI1(),getI2()); clone.setId(getId()); return clone; } public String toString() { StringBuilder builder = new StringBuilder("DBTest:[\t"); builder.append(getId()); builder.append(",\t"); builder.append(getI1()); builder.append(",\t"); builder.append(getI2()); builder.append(",\t"); builder.append(getText1()); builder.append(",\t"); builder.append(getText2()); builder.append(" ]"); return builder.toString(); } public static void main(String[] args) { EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("mydb"); EntityManager em = entityManagerFactory.createEntityManager(); EntityTransaction transaction = em.getTransaction(); DBTest t = new DBTest("TEST_1","TEST_2", 1, 2); transaction.begin(); DBTest tManaged = em.merge(t); transaction.commit(); transaction.begin(); tManaged = em.find(DBTest.class, tManaged.getId()); transaction.commit(); System.out.println("FOUND: "+tManaged.toString()); transaction.begin(); if(tManaged!=null) { em.refresh(tManaged); } transaction.commit(); System.out.println("REFRESHED: "+tManaged.toString()); } }