Hibernate配置问题

问题描述

请问各位为什么Hibernate中的属性<propertyname="hbm2ddl.auto">update</property>没有用啊,不是说hbm2ddl.auto的值改为update就可以改变表的结构吗?我的hibernate配置为<session-factory><!--Databaseconnectionsettings--><propertyname="connection.driver_class">com.mysql.jdbc.Driver</property><propertyname="connection.url">jdbc:mysql://localhost/hibnate</property><propertyname="connection.username">root</property><propertyname="connection.password">root</property><!--JDBCconnectionpool(usethebuilt-in)--><propertyname="connection.pool_size">1</property><!--SQLdialect--><propertyname="dialect">org.hibernate.dialect.HSQLDialect</property><!--EnableHibernate'sautomaticsessioncontextmanagement--><propertyname="current_session_context_class">thread</property><!--Disablethesecond-levelcache--><propertyname="cache.provider_class">org.hibernate.cache.NoCacheProvider</property><!--EchoallexecutedSQLtostdout--><propertyname="show_sql">true</property><!--Dropandre-createthedatabaseschemaonstartup--><propertyname="hbm2ddl.auto">update</property><!--<mappingresource="com/bjsxt/hibnate/model/student.hbm.xml"/>--><mappingclass="com.bjsxt.hibnate.model.teacher"/></session-factory></hibernate-configuration>我的数据库名字叫hibnate,表名叫teacher,表中初始的有3个属性id,name,age类为@Entitypublicclassteacher{intage;intid;Stringname;publicintgetAge(){returnage;}@IdpublicintgetId(){returnid;}publicStringgetName(){returnname;}publicvoidsetAge(intage){this.age=age;}publicvoidsetId(intid){this.id=id;}publicvoidsetName(Stringname){this.name=name;}}执行类为packagecom.bjsxt.hibnate.model;importorg.hibernate.Session;importorg.hibernate.SessionFactory;importorg.hibernate.cfg.AnnotationConfiguration;importorg.junit.Test;publicclassteachertest{publicstaticvoidmain(Stringargs[]){teachert=newteacher();t.setId(1);t.setName("第而");t.setAge(2);AnnotationConfigurationcfg=newAnnotationConfiguration();SessionFactorysf=cfg.configure().buildSessionFactory();Sessionsession=sf.openSession();session.beginTransaction();session.save(t);session.getTransaction().commit();session.close();sf.close();}}如果我要是为teacher类增加一个字段就会报错例如@Entitypublicclassteacher{intage;intid;Stringname;Stringtian1;//增加了一个字段tian1publicStringgetTian1(){returntian1;}publicvoidsetTian1(Stringtian1){this.tian1=tian1;}publicintgetAge(){returnage;}@IdpublicintgetId(){returnid;}publicStringgetName(){returnname;}publicvoidsetAge(intage){this.age=age;}publicvoidsetId(intid){this.id=id;}publicvoidsetName(Stringname){this.name=name;}}hibernate报错Unknowncolumn'tian1'in'fieldlist'小弟很急啊,弄了一天了,各位帮忙看看啊,小弟不胜感激

解决方案

解决方案二:
<propertyname="hbm2ddl.auto">update</property>-><propertyname="hbm2ddl.auto">create</property>
解决方案三:
该回复于2011-03-28 09:00:58被版主删除
解决方案四:
4个属性分别是create:每次启动时创建表结构,在建表前会先执行删除表的语句,以保证创建成功。update:每次启动时检测一下,如果表结构没有,则创建,不一样,则更新。create-drop:每次启动时创建表结构,退出前删除表结构validate:每次启动时检测一下,如果表结构不一样,就报错hbm2ddl.auto,一般在新增时有效,更新时无效。
解决方案五:
com/bjsxt/hibnate/model/student.hbm.xml这个配置文件内容呢
解决方案六:
该回复于2011-03-28 09:17:00被版主删除

时间: 2024-10-27 01:27:50

Hibernate配置问题的相关文章

hibernate-SSH框架,Hibernate配置问题

问题描述 SSH框架,Hibernate配置问题 类:class A{},class B extends class A{} , class C extends class A{}, class D{ private Setas; ... getter setter.... } 这种情况D.hbm.xml怎么配置,里面有一多态,但是配置文件中class属性对应的是具体的表啊

spring3 与hibernate配置问题

问题描述 org.springframework.beans.factory.BeanCreationException:Errorcreatingbeanwithname'loginController':Injectionofautowireddependenciesfailed;nestedexceptionisorg.springframework.beans.factory.BeanCreationException:Couldnotautowirefield:privatenet.v

spring-hibernate cache配置问题

问题描述 hibernate cache配置问题 求各位大神帮忙.. WARN: HHH020003: Could not find a specific ehcache configuration for cache named [org.hibernate.cache.internal.StandardQueryCache]; using defaults. <property name="hibernateProperties"> <props> <

hibernate+sqlite链接问题

问题描述 hibernate+sqlite链接问题 hibernate链接sqlite 项目启动时database is locked 是什么原因导致的呢?驱动包版本还是方言 或者是hibernate配置问题呢?有遇到这问题的吗?(能帮忙解答者 解决后高分酬谢) 解决方案 Hibernate 链接sqlite 链接hibernate与数据库的链接 解决方案二: Sqlite不支持并发执行写入操作

SQL Warning: 17110

问题描述 谁知道SQLWarning:17110,SQLState:null是什么原因引起的? 解决方案 解决方案二:hibernate配置问题再调试一下解决方案三:怎么调试啊?整了一天了没找出问题来解决方案四:我也遇到这个问题了,请问有人解决了吗?解决方案五:ai,这个问题怎么没有人关注呢.

多个相同类的属性-hibernate的关联关系配置问题

问题描述 hibernate的关联关系配置问题 我现在有一个借阅信息类,如下 class Borrow { private String borrowId;// 借阅流水 private Book book; private User borrowUser;// 借阅人 private Date borrowDate;// 借阅日期 private Date shouldReturnDate;// 应还日期 private User orderUser;// 预约人 private int re

hibernate和数据库的映射配置问题

问题描述 hibernate和数据库的映射配置问题 数据库的配置必须要和hibernate的配置文件一致吗?还是只要不冲突就好了?比如Sting类型设置成int这种. 比如我现在设置一个主键自增长,还给它一个不满长度填充为0的设置,Hibernate只设置为主键自增长,没有设置填充0,能行吗?刚学hibernate很多设置不知道有没有. 解决方案 应该是不行的,应该对应.

菜鸟问一个hibernate关于继承关系映射的配置问题

问题描述 菜鸟问一个hibernate关于继承关系映射的配置问题 按照教学视频配置: <class name="Employee" discriminator-value = "0"> <id name="id"> <generator class="native"></generator> </id> <property name="name&quo

hibernate的缓存配置问题

问题描述 hibernate的缓存配置问题 hibernate的缓存已经设置好了....经过测试没有问题... <defaultCache maxElementsInMemory="10000" eternal="false" timeToIdleSeconds="120" timeToLiveSeconds="120" overflowToDisk="true" diskPersistent=&qu