package com.jiuqi.mobile.core.service.ormcomplextest;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.UUID;
import org.junit.Test;
import com.jqmobile.core.orm.ORM;
import com.jqmobile.core.orm.exception.ORMException;
import com.jqmobile.core.orm.exception.ORMNotDBTableException;
import com.jqmobile.core.server.db.DBPool;
import com.jqmobile.core.server.db.orm.ORMFactory;
public class ComplexTest {
@Test
public void testid() throws SQLException, ORMNotDBTableException, ORMException{
Connection conn=DBPool.getInstance().getConnection();
ORM<Pencil> orm=ORMFactory.instance(conn, Pencil.class);
/*Pencil p=new Pencil();
p.setColor("蓝色");
p.setPrice(20);
p.setRecid(UUID.randomUUID().toString());
orm.insert(p);*/
System.out.println(orm.getAll());
conn.commit();
conn.close();
}
public void test() throws SQLException, ORMNotDBTableException, ORMException{
System.out.println("----------------------------------------------------");
long start=System.currentTimeMillis();
Connection conn=DBPool.getInstance().getConnection();
ORM<Girl> orm=ORMFactory.instance(conn, Girl.class);
long method=System.currentTimeMillis();
// inserttest(orm);
// queryTest(orm);
// findTest(orm);
// deletetest(orm);
updatetest(orm);
// addColumn();
System.out.println("方法用时"+(System.currentTimeMillis()-method));
conn.commit();
conn.close();
System.out.println("全部用时"+(System.currentTimeMillis()-start));
System.out.println("----------------------------------------------------");
}
public void addColumn() throws SQLException, ORMNotDBTableException, ORMException {
Connection conn=DBPool.getInstance().getConnection();
ORM<Pencil> orm=ORMFactory.instance(conn, Pencil.class);
orm.getClass();
conn.commit();
conn.close();
}
public void updatetest(ORM<Girl> orm) throws ORMException {
Girl girl=orm.find("a3689865-4d08-4156-9d2b-a38197aa5e95");
// girl.setVersion(20);
// girl.setPencil(null);
// girl.setPackages(null);
System.out.println(girl);
Pencil pencil=new Pencil();
pencil.setName("2b");
pencil.setPrice(10);
pencil.setRecid(UUID.randomUUID().toString());
girl.setPencil(pencil);
Set<Package> packages=new HashSet<Package>();
for (int j = 0; j < 3; j++) {
Package p=new Package();
p.setName("huawei");
p.setPrice(10);
p.setRecid(UUID.randomUUID());
packages.add(p);
}
girl.setPackages(packages);
orm.update(girl);
girl=orm.find("a3689865-4d08-4156-9d2b-a38197aa5e95");
System.out.println(girl);
}
public void deletetest(ORM<Girl> orm) throws ORMException {
orm.delete("f37150fd-64d3-45de-ae30-6ff29937bd9e");
}
private void findTest(ORM<Girl> orm) {
System.out.println(orm.find("f37150fd-64d3-45de-ae30-6ff29937bd9e"));
}
public void queryTest(ORM<Girl> orm) throws ORMException {
List<Girl> gs=orm.getAll();
System.out.println("---------------------------------------------getall-----------------------------------------------");
for(Girl g:gs){
System.out.println(g);
}
System.out.println("---------------------------------------------querypage-----------------------------------------------");
gs=orm.queryPage("", 0, 2);
for(Girl g:gs){
System.out.println(g);
}
System.out.println("-------------------------------------------query-------------------------------------------------");
gs=orm.query("name=?;","liyi");
for(Girl g:gs){
System.out.println(g);
}
System.out.println("--------------------------------------------------------------------------------------------");
}
public void inserttest(ORM<Girl> orm) throws ORMException{
for (int i = 0; i < 100; i++) {
Girl g=new Girl();
g.setAge(10);
g.setBirthday(new Date().getTime());
g.setName("liyi");
g.setRecid(UUID.randomUUID().toString());
g.setSchool("yizhong");
g.setVersion(1);
Pencil pencil=new Pencil();
pencil.setName("2b");
pencil.setPrice(10);
pencil.setRecid(UUID.randomUUID().toString());
g.setPencil(pencil);
Set<Package> packages=new HashSet<Package>();
for (int j = 0; j < 3; j++) {
Package p=new Package();
p.setName("huawei");
p.setPrice(10);
p.setRecid(UUID.randomUUID());
packages.add(p);
}
g.setPackages(packages);
orm.insert(g);
}
}
}