程序执行,但数据库没有插入数据

使用的是MySql+hibernate,提示:Hibernate:insertintoad_user(username,password,e_mail,phone,sex... 使用的是MySql + hibernate,
提示:Hibernate:insert into ad_user(username, password, e_mail, phone, sex, admin) values (?, ?, ?, ?, ?, ?),如何向数据库插入数据

我使用的是:Session session = HibernateSessionFactory.getSession();
session.save(user);

action中的执行语句为:
public String execute() throws Exception {

User user = new User(username,password,e_mail,phone,sex);

boolean b = DAOFactory.getUserDAOIMP().queryByUsername(username);
if(!b){
boolean isReg = DAOFactory.getUserDAOIMP().isReg(user);
if(isReg){
return "success";
}else{
return "fail";
}
}else{
return "fail";
}
}
执行之后 chain.doFilter(request, response); 能否执行public boolean isReg(User user) {
boolean b = false ;

Session session = HibernateSessionFactory.getSession();
session.save(user);
int i=user.getId();
System.out.println(i);
if(i > 0){
b= true ;
}
return b;
} 因为插入数据的代码在这里,我用的是过滤器,能否自动跳转
展开
 我来答
dongwenkai1
2009-09-08 · 超过15用户采纳过TA的回答
知道答主
回答量:60
采纳率:0%
帮助的人:49.3万
展开全部
你是在doFilter方法中的session.beginTransaction();和session.getTransaction().commit();之间执行Session session = HibernateSessionFactory.getSession();
session.save(user);这个代码吗?
Session session = HibernateSessionFactory.getSession();
session.save(user);这段代码必须要在事务的开启到提交之间运行

执行之后 chain.doFilter(request, response); 能否执行public boolean isReg(User user) {.....}?
什么意思,执行这个方法吗?如果执行这个方法掉就行?还是什么?

过滤器能行吗?你把方法内部的东西放到doFilter方法的session.beginTransaction();和session.getTransaction().commit();之间
在看看数据库。
wdjhz
2009-09-07 · TA获得超过3529个赞
知道大有可为答主
回答量:2227
采纳率:41%
帮助的人:683万
展开全部
事务是否开启??事务是否递交??commit了没有?

没commit的话的确是插入数据库了,但你是看不到的,那叫脏数据
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式