我想让我的客户在 CMS 中动态创建他自己的字段和 bean。
同样,一旦他创建了一个表单,我就需要创建一个可以保存到数据库的 Hibernate 实体。
有办法吗?
我正在使用 JSF2 和 Hibernate 3
有没有重新编译?
最佳答案
动态创建表和实体在我看来不是一个好主意。 Hibernate 并不是真正为此而生,生成实体只是问题的一小部分。您必须将它们添加到配置中,重建 session 工厂,更新模型。以及随后的应用程序重启呢? 不推荐,只是忘记这种方法......
另一种选择是使用 Entity-Attribute-Value (EAV)模型。这是许多 CMS 正在做的事情。我从来没有用 Hibernate 实现过这个,但它是可行的(并且已经完成)。以下是一些资源:
但老实说,我不会实现自己的 CMS,而是重用现有的 CMS。 One Hippo似乎是候选人。
另见
相关问题
- Entity Attribute Value Database vs. strict Relational Model Ecommerce question
- Approach to generic database design
- How do you build extensible data model
- I am looking for something similar to the drupal CCK, but in Java (in a Java CMS)?
- Java Frameworks that support Entity-Attribute-Value Models
- Implementing EAV pattern with Hibernate for User -> Settings relationship
关于java - JSF bean 中的动态字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3290672/