常見異常整理

HHH000142: Javassist Enhancement failed: com.xxx.xxx

在實體類映射文件中配置了many-to-one後,出現了上述的錯誤

解決辦法:在many-to-one標籤中,設置lazy屬性值爲false

<many-to-one name="custSource" column="cust_source" class="com.itheima.domain.BaseDict" lazy="false"></many-to-one>
<many-to-one name="custLevel" column="cust_level" class="com.itheima.domain.BaseDict" lazy="false"></many-to-one>

Caused by: org.hibernate.tool.schema.spi.SchemaManagementException

target [alter table t_user add column uid integer not null]
    at org.hibernate.tool.schema.internal.TargetDatabaseImpl.accept(TargetDatabaseImpl.java:59)
    at org.hibernate.tool.schema.internal.SchemaMigratorImpl.applySqlString(SchemaMigratorImpl.java:431)
    at org.hibernate.tool.schema.internal.SchemaMigratorImpl.applySqlStrings(SchemaMigratorImpl.java:449)
    at org.hibernate.tool.schema.internal.SchemaMigratorImpl.migrateTable(SchemaMigratorImpl.java:253)
    at org.hibernate.tool.schema.internal.SchemaMigratorImpl.doMigrationToTargets(SchemaMigratorImpl.java:170)
    at org.hibernate.tool.schema.internal.SchemaMigratorImpl.doMigration(SchemaMigratorImpl.java:60)
    at org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(SchemaUpdate.java:133)
    at org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(SchemaUpdate.java:101)
    at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:470)
    at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:444)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:708)
    at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:724)
    at cn.itcast.utils.HibernateUtils.<clinit>(HibernateUtils.java:12)

在整合ssh框架時,測試數據庫配置是否正確,遇到此異常。

之前是

<property name="hibernate.hbm2ddl.auto">update</property>

改爲

<property name="hibernate.hbm2ddl.auto">create</property>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章