hibernate与spring整合的问题

原创 2007年09月28日 19:54:00
 
Hibernate: select spring0_.id as col_0_0_ from spring spring0_ where spring0_.username=
Hibernate: 
select spring0_.id as col_0_0_ from spring spring0_ where spring0_.username=
Hibernate: 
select spring0_.id as id0_0_, spring0_.username as username0_0_, spring0_.password as password0_0_ from spring spring0_ where spring0_.id=
Hibernate: 
select spring0_.id as col_0_0_ from spring spring0_ where spring0_.username=
Hibernate: 
select spring0_.id as col_0_0_ from spring spring0_ where spring0_.username=
Hibernate: 
select spring0_.id as id0_0_, spring0_.username as username0_0_, spring0_.password as password0_0_ from spring spring0_ where spring0_.id=
Hibernate: 
select spring0_.id as col_0_0_ from spring spring0_ where spring0_.username=
Hibernate: 
select spring0_.id as col_0_0_ from spring spring0_ where spring0_.username=
Hibernate: 
select spring0_.id as id0_0_, spring0_.username as username0_0_, spring0_.password as password0_0_ from spring spring0_ where spring0_.id=

其中我只用了一次向数据库查询数据怎么这一句
Hibernate: select spring0_.id as col_0_0_ from spring spring0_ where spring0_.username=? 
要执行两此
其中查询是在spring的validator中中进行的事物管理使用spring的声明式事物管理
Spring DBuser = udao.getUserByName(user.getUsername());
而getUserByName()的定义如下
 
public class SpringDaoImpl extends HibernateDaoSupport implements SpringDao 

 
public Spring getUserByName(String name) 
         Session session 
= this.getSession(); 
         Query q 
= session.createQuery("from Spring s where s.username=?"); 
         q.setString(
0, name); 
         Spring user 
= null
         
if(q.iterate().hasNext()) 
         

             user 
= (Spring) q.iterate().next(); 
         }
 
         
return user; 
     }
 
 }  

而现在我有试着重新把这个方法再定义下,其改后如下
 
  public Spring getUserByName(String name) 
          List list 
= this.getHibernateTemplate().findByNamedParam( 
                  
"from Spring s where s.username=:name""name", name); 
          Iterator it 
= list.iterator(); 
          Spring user 
= null
          
if (it.hasNext()) 
              user 
= (Spring) it.next(); 
          }
 
          
return user; 
      }
 

这时我重新运行这个web程序 看下运行的结果,却发现这时没有hibernate所说的lazy-load(懒集合),而是直接从database里把所有的数据加进来
其运行两次的结果如下:
 
Hibernate: select spring0_.id as id0_, spring0_.username as username0_, spring0_.password as password0_ from spring spring0_ where spring0_.username=
Hibernate: 
select spring0_.id as id0_, spring0_.username as username0_, spring0_.password as password0_ from spring spring0_ where spring0_.username=

这是否就意味着没有使用到hibernate提供的性能优化的功能呢?或者这背后还有更多的考虑呢?真是迷惑啊,还请各位指点。
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Jbpm4.4+hibernate3.5.4+spring3.0.4+struts2.1.8整合例子(附完整的请假流程例子,jbpm基础,常见问题解决)

Jbpm4.4+hibernate3.5.4+spring3.0.4+struts2.1.8整合例子(附完整的请假流程例子)。1.       jbpm4.4测试环境搭建2.     &#...

spring4, hibernate4 整合问题

在整合spring和hibernate中,出现了一下错误: org.hibernate.HibernateException: Could not obtain transaction-synchro...

hibernate与spring整合所遇到的问题

我把hibernate的sessionfactory放在spring的IOC容器中管理时,spring配置跟网上的基本一样,但项目启动时tomcat报以下错误,网上找了很多方案都没能解决,后来看到一个...

Hibernate + Spring (quartz) 整合懒(延迟)加载问题

Hibernate + Spring (quartz) 整合懒(延迟)加载问题 开发项目的时候 在一个Job中执行了数据库操作, 用的是懒加载,但是如下错误 org.hibernate.LazyI...

Spring mvc3.1.3 +hibernate 4.2.12+Shiro 1.2.3 整合及遇见的问题

首先,就是下载这几个框架的包,spring hibernate 就不多说了,shiro 需要下载shiro-core.jar,shiro-spring.jary以及shiro-web.jar.  接...

我在spring4整合hibernate5遇到的问题

1,nested exception is java.lang.NoClassDefFoundError:org/hibernate/engine/SessionFactoryImplementorh...

spring整合hibernate配置注解事务的相关问题

com/aaa/healthHouse/model/Cusna

Spring整合Hibernate遇到的问题

1、刷新模式的问题,FlushMode.MANUALWrite operations are not allowed in read-only mode (FlushMode.MANUAL): Tur...

spring hibernate4整合问题

log4j:WARN No appenders could be found for logger (org.springframework.core.env.StandardEnvironment)...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)