我已按照Balusc's 1st method从数据库中定义的字段创建动态表单。 我可以获取已发布字段的字段名称和值。 但我对如何将值保存到数据库感到困惑。
或者有没有办法将发布的值保存到数据库中? 此致
答案 0 :(得分:2)
看起来你正试图自下而上而不是自上而下。
链接答案中的动态表单旨在在所有现有表中重用,而无需在每个表的“硬编码”Facelets文件上手动创建单独的JSF CRUD表单。您应该已经拥有一个通用模型,其中包含有关特定数据库表中所有可用列的信息(链接答案中为Field
)。这些信息可以通过JPA元数据信息(如何依赖于所使用的JPA提供程序)动态地和一般地提取,或者在应用程序启动期间通过良好的'ol JDBC ResultSetMetaData
类提取一次。
如果你真的需要自下而上的工作,那就更难了。在运行时创建表/列是一个非常糟糕的设计(除非您打算开发某种类型的DB管理工具,如PhpMyAdmin,当然)。无需创建表/列运行时,基本上应该有3个表:
然后你应该通过FK关系将它们链接在一起。