Hibernate覆盖数据
我是Hibernate中的乞丐,我试图将测试数据保存到表中。每次运行脚本时,我的数据都会被覆盖,甚至是自动生成的ID字段。你能帮我吗 系统:Win32、Eclipse Indigo SR2、Jboss Hybernate 3.5.1Hibernate覆盖数据,hibernate,Hibernate,我是Hibernate中的乞丐,我试图将测试数据保存到表中。每次运行脚本时,我的数据都会被覆盖,甚至是自动生成的ID字段。你能帮我吗 系统:Win32、Eclipse Indigo SR2、Jboss Hybernate 3.5.1 public class testeHibernate { public testeHibernate() { } /** * @param args */ public static void main(String[] args) { Sess
public class testeHibernate {
public testeHibernate() {
}
/**
* @param args
*/
public static void main(String[] args) {
Session session = SessionFactoryUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
Status st = new Status();
st.setAbrev("CON");
st.setDescricao("Consultado");
st.setFim(false);
st.setVigente(true);
session.persist(st);
List result = session.createQuery("FROM Status").list();
for(Status sta : (List<Status>) result){
System.out.println(sta.getDescricao());
}
session.getTransaction().commit();
}
}
xml映射
配置XML
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory name="sessionFactoryDB2">
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.password">***classified****</property>
<property name="hibernate.connection.url">jdbc:mysql://**CLASSIFIED**:3306/DB2</property>
<property name="hibernate.connection.username">developer</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.current_session_context_class">thread</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.format_sql">true</property>
<!-- Automatic schema creation (begin) === -->
<property name="hibernate.hbm2ddl.auto">create</property>
<!-- Simple memory-only cache -->
<property name="hibernate.cache.provider_class">org.hibernate.cache.HashtableCacheProvider</property>
<mapping class="br.com.bb.analop.classes.Status"
package="br.com.bb.analop.classes" resource="br/com/bb/analop/classes/Status.hbm.xml"/>
</session-factory>
</hibernate-configuration>
更改此项:
<property name="hibernate.hbm2ddl.auto">create</property>
为此:
<property name="hibernate.hbm2ddl.auto">update</property>
每次启动应用程序时,创建删除并重新创建数据库。更新仅在需要时更新您的架构,但如果可能,请保持数据不变更改此选项:
<property name="hibernate.hbm2ddl.auto">create</property>
为此:
<property name="hibernate.hbm2ddl.auto">update</property>
每次启动应用程序时,创建删除并重新创建数据库。更新只会在需要时更新您的模式,但如果可能,请保持数据不变