51代码网ORACLEMYSQLSQL SERVER其它数据库java/jspasp/asp.netC/C++/VC++APP应用其它语言服务器应用
您现在的位置: 51代码网 >> java >> 文章正文

ssh2+tomcat+sqlserver2005

更新时间:2012-1-7:  来源:51代码网

第一个问题:直接在sqlserver查看数据库,然后显示一直在查询,可是数据库里总共只有几行数据,停掉tomcat之后,数据立马显示出来。。
第二个问题:在jsp页面修改数据,然后插入数据库,最后又返回到jsp页面,显示为修改成功(这个时候在数据库里查看数据库也显示一直在查询),关掉服务器后,数据库立马显示出来,而且是修改之前的数据,也就是说之前的数据库没有修改成功

1、我记得tomcat如是启动的,sqlserver是查询不了的。
2、应该是没有提交事务

1.数据库中有两张表,那在用过的表,查不到,但是没用过的表可以查,好像之前只用struts2和hibernate都可以查,也确实可以修改成功额 
2.底层连接数据库的方法,这样写应该不用管事务吧 public void update(Book b) {
this.getHibernateTemplate().update(b);
}

下面是spring 相关的配置
<!-- <context:annotation-config/>-->
<context:component-scan base-package="com.tan"/>
<!--加载Hibernate配置-->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation">
<value>classpath:hibernate.cfg.xml</value>
</property>
</bean>
<bean id="userDAO" class="com.tan.dao.impl.UserDAOImpl">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<bean id="bookDAO" class="com.tan.dao.impl.BookDAOImpl">
<property name="sessionFactory" ref="sessionFactory" />
</bean>

改成hibernateTemplate.update()之后,就没这个问题了,但是仍然没弄清是怎么回事

配置事务就好了,只是这里有点要强调:用getHibernateTemplate()方法时,一定要配置事务,不然就会出现这样的问题,但是用注入hibernateTemplate时,则可以不用配置事务。。。

  • 上一篇文章:
  • 下一篇文章: 没有了
  • 赞助商链接
    推荐文章
  • 此栏目下没有推荐文章
  • {
    设为首页 | 加入收藏 | 友情链接 | 网站地图 | 联系站长 |