HibernateTemplate与JdbcTemplate项目

在实际的项目中,一直都是使用HibernateTemplate,直到项目遇到了一些问题后,才对HibernateTemplate与JdbcTemplate的效率方面多了一些认识。

做了一些测试JdbcTemplate效率上要比HibernateTemplate高一些,因为是原先的测试,测试数据没有记录下来,所以这里就不提供了。至于性能高的原因,以下是我的一个猜测:毕竟HibernateTemplate要比JdbcTemplate封装要强一些,JdbcTemplate比前者要底层一点(后面有机会在阅读一下源码,详细了解具体的原因)。

以下是实际项目中语句的替换:

1.返回一个实体类:

hibernateTemplate:

return (User) this.hibernateTemplate.get(User.class, uId);

JdbcTemplate:

List list = jdbcTemplate.query("select * from user where id=" + uId,
new BeanPropertyRowMapper(User.class));
if (list != null && list.size() > 0) {
   return (User) list.get(0);
}


2.返回一个Integer型数据:

Object[] objs = new Object[] { uid};
try {
   return this.jdbcTemplate.queryForInt(
   "select u.id from user u where u.uid=?", objs);
} catch (EmptyResultDataAccessException e) {
   return null;
}




其他的方法,详看http://my.oschina.net/u/437232/blog/279530



猜你喜欢

转载自blog.csdn.net/fengaodlw/article/details/47452109