hibernate 不能写入数据问题

来源:百度知道 编辑:UC知道 时间:2024/05/10 20:08:21
我用struts+hibernate
都是使用myeclipse自动部署的 struts1.2 ,hibernate 3.1

action中的执行代码:
Login login=new Login();

login.setName(loginForm.getName());
LoginDAO logindao=new LoginDAO();
List
list=logindao.findByProperty("name",loginForm.getName());
if(list.size()>0){
return mapping.findForward("success");
}else{
login.setPass("pass");
logindao.save(login);
System.out.print("ssss");
return null;
}
其中如果输入正确的ID用户名是可以识别的 并能返回正确。
但是save()方法是不行的 delete也不行 但是不报错,下面是DAO中的
save方法:
public void save(Login transientInstance) {
log.debug("saving Login instance");
try {
getSession().save(transientInstance);
System.out.print(transientInstance.getName());
//我加了控制台的输出 看能的到这个对象不 发现是可以得到的 可以正确运行且不报任何错误
log.debug("save successful");
} catch (RuntimeException re) {

import org.hibernate.*;
.../

Login login=new Login();

login.setName(loginForm.getName());
LoginDAO logindao=new LoginDAO();
List
list=logindao.findByProperty("name",loginForm.getName());
Transaction tx=logindao.getSession().beginTransaction();

login.setPass("pass");
logindao.save(login);
tx.commit();
System.out.print("ssss");
return mapping.findForward("success");

用事务提交