hibernate保存类,session.save();并commit了事务,为什么数据库中没有数据,数据库中自动增长的ID增加了1

publicclassHibernateUtil{privatestaticSessionFactorysessionFactory;static{try{session... public class HibernateUtil
{
private static SessionFactory sessionFactory;

static
{
try
{
sessionFactory = new Configuration().configure().buildSessionFactory();
}
catch(Exception ex)
{
ex.printStackTrace();
}
}

public static Session openSession()
{
Session session = sessionFactory.openSession();
return session;
}

public static void close(Session session)
{
if(null != session)
{
session.close();
}
}
}

//添加学生
@Override
public void addStudent(Student student)
{
Session session = HibernateUtil.openSession();
Transaction tx = session.beginTransaction();
try
{
session.save(student);
tx.commit();
}
catch(Exception ex)
{
if(null != tx)
{
System.out.println("添加学生脏数据回滚");
tx.rollback();
}
}
finally
{
HibernateUtil.close(session);
}
}

控制台每次都打印出“添加学生脏数据回滚”
展开
 我来答
kakagui
2011-12-16 · TA获得超过670个赞
知道小有建树答主
回答量:239
采纳率:0%
帮助的人:278万
展开全部
猜测一下,应该是你的entity设值不对。
session.save(一个设值后Entity);

方便的话能否将代码贴出来。
更多追问追答
追问
控制台输出:
Hibernate: insert into student_tab (student_loginName, student_loginPassword, student_name, student_age, student_sex, student_address, in_schoolDate, examination_date, student_idCardNumber, student_phone, student_email, student_qq, student_introduction, student_state, teacher_id, school_id) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
添加学生脏数据回滚
追答
你这是插入了脏数据,数据库回滚了。数据库里肯定没有值

你看看你设置的字段中是否有不符合要求的数据,比如说主键的产生方式,某些字段不为空等等。
只要是看Student.hbm.xml这个文件和你生成student对象的地方做个对比。
帐号已注销
2011-12-16 · TA获得超过1243个赞
知道小有建树答主
回答量:2126
采纳率:55%
帮助的人:671万
展开全部
事务回滚了 你没catch 所以没有报错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
喵道顶5248
2011-12-16 · TA获得超过6万个赞
知道大有可为答主
回答量:3.5万
采纳率:0%
帮助的人:2412万
展开全部
首先,检查这个sutdent对象中是否有数据。然后检查hibernate映射文件中映射的数据库列是否跟student实体bean一一对应。如果都检查正确了,那就要看控制台输出的时候报什么错。针对具体的错误来检查问题所在。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sssuuunnnhhh
2011-12-16 · 超过21用户采纳过TA的回答
知道答主
回答量:94
采纳率:0%
帮助的人:61.8万
展开全部
事务对象未创建
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式