本人初学,用  struts2 + spring + hibernate
String sql = "select * from Tagcategory";
return getSession().createSQLQuery(sql.toString()).list();String sql = "from cruise.oyesgo.model.Tagcategory";
return this.getHibernateTemplate().find(sql);用这两种方法查询数据,第一种方法可以查出数据,但为什么第二种方法查出的 list size 是0???我的配置:struts.xml
<struts>
<package name="struts2" extends="struts-default">
<!--                                test                                -->
<action name="test" class="test" method="test">
<result name="success">index.jsp</result>
</action>
</package>
</struts>hibernate.cfg.xml
<session-factory>

<mapping class="cruise.oyesgo.model.Tagcategory"/>

         <!-- Tagcategory 是一个映射到表的 bean -->

</session-factory>
applicationContext.xml
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:3306/cruises"></property>
<property name="username" value="root"></property>
<property name="password" value="123"></property>
<property name="maxActive" value="100"></property>
<property name="maxIdle" value="30"></property>
<property name="maxWait" value="500"></property>
<property name="defaultAutoCommit" value="true"></property>
</bean>

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
<prop key="hibernate.show_sql">
true
</prop>
</props>
</property>
</bean>


<bean id="test" class="cruise.oyesgo.action.TestAction" scope="prototype">
<property name="testService">
<ref local="testService" />
</property>
</bean>

<bean id="testService" class="cruise.oyesgo.service.TestService">
<property name="testDao">
<ref local="testDao" />
</property>
</bean>

<bean id="testDao" class="cruise.oyesgo.dao.TestDao">
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>求高人指教~~谢谢

解决方案 »

  1.   

    String sql = "select * from Tagcategory"; 
    return getSession().createSQLQuery(sql.toString()).list(); String sql = "from cruise.oyesgo.model.Tagcategory"; 
    return this.getHibernateTemplate().find(sql); 
      

  2.   

    String sql = "from cruise.oyesgo.model.Tagcategory"; 
    return this.getHibernateTemplate().find(sql); 你改成String sql = "from Tagcategory";试试