hibernate-tools不生成实体类的一些原因

解决hibernate-tools无法生成实体类的问题
在Eclipse中安装并配置hibernate-tools后,尝试通过数据库生成实体类失败。问题出在配置hibernate.reveng.xml时,直接从数据库导入导致的错误。正确做法是手动编写或调整该文件以确保实体类的正确生成。

eclipse安装好hibernate-tools之后,按照官方教程配置好hibernate.cfg.xml和hibernate configuration,hibernate.reveng.xml,最后 执行RUN命令。但是结果却是令人非常失望,实体类没有生成……,折腾了一天。最后发现原因是在配置hibernate.reveng.xml的时候,直接选择数据库——>Include...如下图:

这种情况下,得到的hibernate.reveng.xml为:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-reverse-engineering PUBLIC "-//Hibernate/Hibernate Reverse Engineering DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-reverse-engineering-3.0.dtd" >

<hibernate-reverse-engineering>
<table-filter match-schema="hhcg_db" match-name=".*"/>
</hibernate-reverse-engineering>


其中红色一行是出错的原因,解决方法有两种:

1.把此行去掉,则可以生成所有表格;

2.如下图,在选择database schema的时候,选择具体的表格,而不是直接选择数据库

这样,得到的hibernate.reveng.xml为:

<hibernate-reverse-engineering>
  <table-filter match-catalog="hhcg_db" match-name="approval"/>
  <table-filter match-catalog="hhcg_db" match-name="carcondition"/>
  <table-filter match-catalog="hhcg_db" match-name="carfee"/>
  <table-filter match-catalog="hhcg_db" match-name="carfitting"/>
  <table-filter match-catalog="hhcg_db" match-name="carinfo"/>
  <table-filter match-catalog="hhcg_db" match-name="delayrequest"/>
  <table-filter match-catalog="hhcg_db" match-name="driverecord"/>
  <table-filter match-catalog="hhcg_db" match-name="head"/>
  <table-filter match-catalog="hhcg_db" match-name="maxids"/>
  <table-filter match-catalog="hhcg_db" match-name="repairfactory"/>
  <table-filter match-catalog="hhcg_db" match-name="repairfittings"/>
  <table-filter match-catalog="hhcg_db" match-name="repairitems"/>
  <table-filter match-catalog="hhcg_db" match-name="repairrecord"/>
  <table-filter match-catalog="hhcg_db" match-name="repairrequest"/>
  <table-filter match-catalog="hhcg_db" match-name="usecarrecord"/>
  <table-filter match-catalog="hhcg_db" match-name="usecarrequest"/>
  <table-filter match-catalog="hhcg_db" match-name="userinfo"/>
</hibernate-reverse-engineering>

用上述两种方法改造后,执行RUN命令,实体类正常生成



                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值