项目隔离Seam中的实体

时间:2009-10-16 13:33:02

标签: java jboss seam entity

是否有可能只为实体(src / main)和其他项目访问它们的Seam项目?

我的情况是,一个组织有6个项目访问相同的实体,我不想在每个项目中复制它们。如果有可能,我该怎么做?我在哪里可以找到有关它的文档?

感谢,

Cateno Viglio

2 个答案:

答案 0 :(得分:1)

是的,这是很常见的方式。查看Richfaces photo album example您在哪里拥有ejb模块保存域并在Web模块中用作依赖项。当然,您必须记住将空文件 seam.properties 添加到结果jar文件中。

PS。此示例由maven构建并使用ejb(实体和会话bean)。如果您愿意,可以使用seam-gen和POJO。

答案 1 :(得分:0)

取决于你究竟是什么意思。

是的,您可以为实体类声明单独的项目。我大概有大约50个项目。其中少数几个实际上是打包为WAR文件的Web应用程序。其余的由实用程序项目,服务项目,监听器,实体和servlet过滤器组成。

以这种方式打破项目有其优点和缺点。每次对项目进行更改时,都必须在其他项目中传播该更改。但是,它会隔离您的代码并允许您更轻松地编写单元测试,因为您现在可以专注于5个类而不是500个。

另一个潜在的缺点是,不幸的是,PMD将无法检测您是否在项目之间复制了代码。至少我不知道该怎么做。

我使用这种模式(划分和征服/重构复制)相当多,以避免重复代码。