package jef.database.jpa; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import javax.persistence.Id; import jef.common.wrapper.Page; import jef.database.DbClient; import jef.database.DbClientBuilder; import jef.database.meta.MetaHolder; import org.apache.commons.lang.builder.ToStringBuilder; import org.easyframe.enterprise.spring.CommonDao; import org.easyframe.enterprise.spring.CommonDaoImpl; import org.junit.Assert; import org.junit.FixMethodOrder; import org.junit.Test; import org.junit.runners.MethodSorters; @FixMethodOrder(MethodSorters.NAME_ASCENDING) public class TestPOJO { DbClient db; CommonDao dao; public TestPOJO() throws SQLException{ db=new DbClientBuilder().build(); dao=new CommonDaoImpl(db); dao.getNoTransactionSession().createTable(PojoEntity.class); dao.getNoTransactionSession().createTable(PojoFoo.class); } /** * 实体类 * @author jiyi * */ public static class PojoFoo{ @Id private int id; private String name; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String toString() { return ToStringBuilder.reflectionToString(this); } } @Test public void testpojo() throws SQLException{ PojoEntity p=new PojoEntity(); p.setName("fsdfsfs"); dao.insert(p); System.out.println(p.getId()); dao.insert(p); System.out.println(p.getId()); dao.insert(p); System.out.println(p.getId()); PojoEntity pojo=dao.load(p); System.out.println(pojo); pojo.setName("35677"); dao.update(pojo); System.out.println("-=-=========================="); PojoEntity cond=new PojoEntity(); cond.setId(12); System.out.println(dao.find(cond)); dao.remove(cond); } @Test public void test2() throws SQLException{ dao.getNoTransactionSession().truncate(MetaHolder.getMeta(PojoFoo.class)); List<PojoFoo> ps=new ArrayList<PojoFoo>(); for(int i=0;i<50;i++){ PojoFoo foo=new PojoFoo(); foo.setId(i); foo.setName("四十九"+i); ps.add(foo); } dao.batchInsert(ps); PojoFoo foo=new PojoFoo(); foo.setId(1); foo=dao.load(foo); Assert.assertNotNull(foo); List<PojoFoo> foos=dao.findByExample(foo); Assert.assertEquals(1, foos.size()); Page<PojoFoo> result=dao.findAndPage(new PojoFoo(), 3, 8); System.out.println(result); Assert.assertEquals(8, result.getList().size()); for(PojoFoo bean: result.getList()){ bean.setName("修改"+bean.getName()); } dao.batchUpdate(result.getList()); List<PojoFoo> pojo=dao.findByField(PojoFoo.class, "name", "修改四十九6"); System.out.println(pojo); dao.batchDelete(result.getList()); } @Test public void test3() throws SQLException{ DbClient session=dao.getNoTransactionSession(); session.truncate(MetaHolder.getMeta(PojoFoo.class)); List<PojoFoo> ps=new ArrayList<PojoFoo>(); for(int i=0;i<50;i++){ PojoFoo foo=new PojoFoo(); foo.setId(i); foo.setName("四十九"+i); ps.add(foo); } session.batchInsert(ps); PojoFoo foo=new PojoFoo(); foo.setId(1); foo=session.load(foo); Assert.assertNotNull(foo); List<PojoFoo> foos=session.selectByExample(foo); Assert.assertEquals(1, foos.size()); Page<PojoFoo> result=session.selectPage(new PojoFoo(), 3, 8); System.out.println(result); Assert.assertEquals(8, result.getList().size()); for(PojoFoo bean: result.getList()){ bean.setName("修改"+bean.getName()); } session.batchUpdate(result.getList()); List<PojoFoo> pojo=session.selectByField(PojoFoo.class, "name", "修改四十九6"); System.out.println(pojo); session.batchDelete(result.getList()); } }