首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用Hibernate逆向工程更改java类

无法使用Hibernate逆向工程更改java类
EN

Stack Overflow用户
提问于 2016-02-13 08:49:22
回答 1查看 467关注 0票数 0

我第一次在一个学校项目中使用Hibernate,我们正在为美食车构建一个类似Yelp的应用程序。但是,因为我首先创建了我的数据库模式,所以我使用Hibernate的逆向工程特性来生成Java类。但是,我不能让Hibernate以我想要的方式生成Java类。这是我的hibernate.reveng.xml文件

代码语言:javascript
复制
<?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>
  <schema-selection match-catalog="FoodTrucks"/>
  <table-filter match-name="item"/>
  <table-filter match-name="tags"/>
  <table-filter match-name="truck"/>
  <table-filter match-name="menu"/>
  <table-filter match-name="tag_item_map" exclude="true"/>
  <table-filter match-name="user"/>
  <table-filter match-name="item_review"/>
  <table-filter match-name="truck_review"/>
  <table name="item">
       <column name="menu_id" exclude="true"></column>
       <foreign-key constraint-name="item_review_ibfk_2">
          <many-to-one property="items"></many-to-one>
       </foreign-key>
       <foreign-key constraint-name="tag_item_map_ibfk_1">
          <set property="tags"></set>
      </foreign-key>
  </table>
  <table name="menu">
      <column name="truck_id" exclude="true"></column>
      <foreign-key constraint-name="item_ibfk_1">
          <many-to-one property="items"></many-to-one>
      </foreign-key>
  </table>
  <table name="tags">
      <foreign-key constraint-name="tag_item_map_ibfk_2">
          <many-to-one property="items"></many-to-one>
      </foreign-key>
  </table>
  <table name="truck">
      <foreign-key constraint-name="menu_ibfk_1">
          <many-to-one property="menus"></many-to-one>
      </foreign-key>
      <foreign-key constraint-name="truck_review_ibfk_2">
          <many-to-one property="reviews"></many-to-one>
      </foreign-key>
  </table>
  <table name="user">
      <column name="pass_word" exclude="true"></column>
       <foreign-key constraint-name="item_review_ibfk_1">
          <many-to-one property="itemReviews"></many-to-one>
      </foreign-key>
      <foreign-key constraint-name="truck_review_ibfk_1">
          <many-to-one property="truckReviews"></many-to-one>
      </foreign-key>
  </table>
</hibernate-reverse-engineering>

然而,我唯一能够正确完成的事情就是将标签排除到项目表中。例如,下面是生成的Item类,sans getters和setters。

代码语言:javascript
复制
public class Item  implements java.io.Serializable {


     private Integer id;
     private Menu items;
     private String itemName;
     private double price;
     private Set itemReviews = new HashSet(0);

    public Item() {
    }


    public Item(String itemName, double price) {
        this.itemName = itemName;
        this.price = price;
    }
    public Item(Menu items, String itemName, double price, Set itemReviews) {
       this.items = items;
       this.itemName = itemName;
       this.price = price;
       this.itemReviews = itemReviews;
    }

// getters and setters down here
}

我知道我做错了什么或做错了什么,但我不知道是什么。此外,当我在初始生成后尝试生成代码时,我收到了这个错误消息“Hibernate configuration fails”,并显示以下消息:resource:/Item.hbm.xml‘t t the found see message.log for exception details。尽管Item.hbm.xml就在那里。

EN

回答 1

Stack Overflow用户

发布于 2016-03-08 01:54:57

你没有明确说明你想要怎样的Java类?

完全按照本教程进行操作-它将有助于理解https://netbeans.org/kb/docs/java/hibernate-java-se.ht ml的过程/步骤

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35374687

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档