当前位置: 代码迷 >> Java Web开发 >> SSH中,小弟我的getHibernateTemplate().update()不管用,多谢各位
  详细解决方案

SSH中,小弟我的getHibernateTemplate().update()不管用,多谢各位

热度:257   发布时间:2016-04-15 22:43:23.0
SSH中,我的getHibernateTemplate().update()不管用,求助,谢谢各位
本人新手啊,我做的密码修改的功能,我在网上查了一下,说getHibernateTemplate().update()方法的参数要是什么游离态什么的。。反正我看不懂,总之我按照他们的方法,先根据Id查询出了这个用户,然后把要改的值set进去,将这个对象传入getHibernateTemplate().update()方法。。但是还是不行啊,另外,SQL语句不出来。
这是action部分代码

public String execute() throws Exception
{
//根据Id更新密码
ucpSer.updataUserInfo(this.userId, this.newPassword);
return SUCCESS;
}

这是service的方法

public void updataUserInfo(String userId,String newPassword) 
{
UserInfoTable userInfo = this.findOneUserInfo(userId);
        //我试了这句话,能打印出来,证明可以根据Id查询出这个用户信息的对象
System.out.println(userInfo.getUserNick());
        //这是要改的,更新新密码,别的不改
userInfo.setUserPassword(newPassword);
this.uiDao.updataUserInfo(userInfo);
}

这是uiDao的方法

public void updataUserInfo(UserInfoTable userInfo) 
{
this.getHibernateTemplate().update(userInfo);
}


以上有问题么。。还有,一开始用这个语句报错了,我在web.xml文件里加上了这个

<filter>
<filter-name>hibernateFilter</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
<init-param> 
     <param-name>sessionFactoryBeanName</param-name> 
     <param-value>sessionFactory</param-value> 
   </init-param> 
   <init-param> 
            <param-name>singleSession</param-name> 
            <param-value>true</param-value>            
        </init-param> 
        <init-param> 
         <param-name> flushMode </param-name> 
   <param-value>AUTO </param-value>        
        </init-param>
</filter>
<filter-mapping>
<filter-name>hibernateFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>


加上这个就不报错了。。。但是不能更新,我哪里错了,还请大家告诉我一下,谢谢
------解决思路----------------------
没更新先看看你的USERID的值对不对
------解决思路----------------------
在修改语句上加上捕获异常的语句,查看是否报错?
  相关解决方案