2

我正在使用 Hibernate、Maven 和 Eclipse(STS 构建)来构建一个项目。我正在使用 hbm.xml 文件来指定我的架构。我想使用 Hibernate 的 hbm2java 来生成我的模型类。我让它运行良好并生成我想要的那种代码。

它可以从命令行完美运行,生成模型代码,然后按预期构建和测试。

但是,Eclipse 似乎无法处理它。它会定期“失去理智”,无法解析我的 DAO 类中引用的非常简单的导入和类,这些都是手工编码的。它找不到的东西是像 HibernateUtil 这样的类。具有讽刺意味的是,找到模型类似乎没有任何问题。

未解析的类在运行结束时位于 target/classes/blah-blah 文件夹中。所以他们显然被复制到了正确的地方。

在“持续集成”环境中,最好生成一次源,将它们提交给我的版本控制,然后禁用代码生成?或者是否可以每次都生成代码,从而确保我在没有人工干预的情况下获取任何数据库更改?

4

2 回答 2

6

恕我直言,实体应该是您应用程序的核心,并且应该小心设计、实施和记录。它们应该是对象,具有封装行为的方法。让它们自动生成是荒谬的,IMO。

从一开始就生成它们可能是让您入门的一种选择,但是一旦生成它们,请手工制作它们并且不要再次生成它们。随着架构的变化添加必要的属性和方法,并重构现有代码。

顺便说一句,我真的更喜欢在映射中使用注释,因为它不那么冗长,更不容易出错,并且所有信息都在一个地方。

于 2011-12-31T00:20:38.227 回答
0

尝试这个:

从命令行遍历到项目所在的项目目录pom.xml并运行:

mvn eclipse:clean eclipse:eclipse

如果它说找不到插件 eclipse 然后尝试:

mvn eclipse:install-plugin

首先,然后再次尝试上面的命令。

这样,所有的 Maven 和项目依赖项也将在 Eclipse 级别解决。

如果这不是您想要的,请告诉我。

于 2012-10-09T20:29:31.353 回答