org.hibernate.SessionFactory sessionFactory = new org.hibernate.cfg.
Configuration().configure().buildSessionFactory();
java.util.List list;
Session session = sessionFactory.openSession();
Transaction tx=session.beginTransaction();
Query qry=session.createQuery("from GradeActFrm");
list=qry.list();
for(int i=0;i<list.size();i++)
{
GradeActFrm grade=(GradeActFrm) list.get(0);
grade.setTag(0);
session.update(grade);
}
for(int i=0;i<list.size();i++)
{
GradeActFrm grade=(GradeActFrm) list.get(0);
System.out.println(grade.getTag()+" ");
}
tx.commit();
session.flush();
session.close();
上面是我的测试代码
目的是把表中的每一条记录的Tag的值都改成0
测试的输出都是 0
好像可以实现
但是去数据库里面打开表看
里面都是没有修改的
小弟菜鸟
大家帮帮忙
谢谢了
Configuration().configure().buildSessionFactory();
java.util.List list;
Session session = sessionFactory.openSession();
Transaction tx=session.beginTransaction();
Query qry=session.createQuery("from GradeActFrm");
list=qry.list();
for(int i=0;i<list.size();i++)
{
GradeActFrm grade=(GradeActFrm) list.get(0);
grade.setTag(0);
session.update(grade);
}
for(int i=0;i<list.size();i++)
{
GradeActFrm grade=(GradeActFrm) list.get(0);
System.out.println(grade.getTag()+" ");
}
tx.commit();
session.flush();
session.close();
上面是我的测试代码
目的是把表中的每一条记录的Tag的值都改成0
测试的输出都是 0
好像可以实现
但是去数据库里面打开表看
里面都是没有修改的
小弟菜鸟
大家帮帮忙
谢谢了
你把tx.commit(); 放到循环中
for(int i=0;i <list.size();i++)
{
GradeActFrm grade=(GradeActFrm) list.get(0);
grade.setTag(0);
session.update(grade);
tx.commit();
} 试试
出现异常
Exception in thread "main" org.hibernate.TransactionException: Transaction not successfully started
at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:100)
at test.test.main(test.java:39)
{
Transaction tx=session.beginTransaction();
GradeActFrm grade=(GradeActFrm) list.get(0);
grade.setTag(0);
session.update(grade);
tx.commit();
}
这个也要加进去。。
{
Transaction tx=session.beginTransaction();
GradeActFrm grade=(GradeActFrm) list.get(0);
grade.setTag(0);
session.update(grade);
tx.commit();
}
我改成这样了
还是老样子
下面是hbm.xml配置
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="model.GradeActFrm" table="GradeInfo" mutable="true" polymorphism="implicit" dynamic-update="false" dynamic-insert="false" select-before-update="false" optimistic-lock="version">
<id name="studentId" column="StudentId" type="java.lang.String" unsaved-value="null">
</id><property name="courseId" column="CourseId" type="int" unique="false" optimistic-lock="true" lazy="false" generated="never" />
<property name="studentName" column="StudentName" type="java.lang.String" unique="false" optimistic-lock="true" lazy="false" generated="never" />
<property name="daokecishu" column="Daokecishu" type="int" unique="false" optimistic-lock="true" lazy="false" generated="never" />
<property name="dianmingcishu" column="Dianmingcishu" type="int" unique="false" optimistic-lock="true" lazy="false" generated="never" />
<property name="qimochengji" column="Qimochengji" type="float" unique="false" optimistic-lock="true" lazy="false" generated="never" />
<property name="zongchengji" column="Zongchengji" type="float" unique="false" optimistic-lock="true" lazy="false" generated="never" />
<property name="tag" column="Tag" type="int" unique="false" optimistic-lock="true" lazy="false" generated="never" /></class>
</hibernate-mapping>
我觉的真是相当的无奈
错的很丢人
浪费大家时间了
谢谢你们