JdbcTemplate返回Map和做ORM的性能比较

        大家应该很好奇做ORM转换跟直接返回map,性能上要差多少,我做了一个对比: TaUser有12个Field,运行这个查询返回记录数有876条。

long lvT=System.currentTimeMillis();		
		List> lvmm=lvUserDao.getListForMap("DG");
		System.out.println("List for map:"+ String.valueOf((System.currentTimeMillis()-lvT)));		
		lvT=System.currentTimeMillis();
		List lvList=lvUserDao.getList("DG");
		System.out.println("List for ORM:"+ String.valueOf((System.currentTimeMillis()-lvT)));
		
		DBUtil dbutil=new DBUtil(ConnectionProvider.getConnection());
		dbutil.setTables("ta_user",TaUser.class, "fa_login", "");
		lvList=null;
		lvT=System.currentTimeMillis();
		lvList= dbutil.getRows(" where fa_plant='DG'");
		System.out.println("List for DBUtil:"+ String.valueOf((System.currentTimeMillis()-lvT)));
		dbutil.close();
		System.out.println(lvList.size());

DBUtil是我早前写的一个类似JdbcTemplate的db类,使用起来很方便,也许就是这种方便让性能差多了,直接被jdbctemplate虐得没影。


跑了好几次,结果是:

List for map:21
List for ORM:66
List for DBUtil:262
876
Hello dgmislrh
com.freestyle.jpatest.model.TaUser@7a3fc986
OK
List for map:17
List for ORM:37
List for DBUtil:193
876
List for map:18
List for ORM:25
List for DBUtil:193
876
Hello dgmislrh
com.freestyle.jpatest.model.TaUser@3faf5fae
OK
List for map:21
List for ORM:26
List for DBUtil:185
876



你可能感兴趣的:(Spring,大杂烩)