使用Struts2和Hibernate从数据库中获取jsp上的动态字段

使用Struts2和Hibernate从数据库中获取jsp上的动态字段,struts2,struts2-jquery,Struts2,Struts2 Jquery,使用Struts2: 我的数据库中有一个带有字段的表(2个文本框和2个下拉列表)。我的jsp使用相应的值正确地呈现它们。现在我想要的是,无论何时在数据库中手动添加任何字段,我都可以使用Struts2在jsp上动态地呈现它。我需要使用ajax吗????或者我应该如何继续 提前谢谢 更新: 我的数据库中有一个表,有两列,标签名称(名称、年龄等)和输入元素类型(文本框、下拉列表等) 现在,无论何时手动或通过某种形式向数据库添加任何字段,我都需要使用Struts 2在JSP上动态呈现它。 相应的输入元素

使用Struts2:

我的数据库中有一个带有字段的表(2个文本框和2个下拉列表)。我的jsp使用相应的值正确地呈现它们。现在我想要的是,无论何时在数据库中手动添加任何字段,我都可以使用Struts2在jsp上动态地呈现它。我需要使用ajax吗????或者我应该如何继续

提前谢谢

更新: 我的数据库中有一个表,有两列,标签名称(名称、年龄等)和输入元素类型(文本框、下拉列表等) 现在,无论何时手动或通过某种形式向数据库添加任何字段,我都需要使用Struts 2在JSP上动态呈现它。
相应的输入元素应该显示在jsp上。

从您的问题和评论中,您需要comet类型的功能。如果这是一个可以控制浏览器版本的intranet应用程序,则可以选择web套接字

在后端有一些考虑。也就是说,您的应用程序是否是更新数据库的唯一方法,或者是否有多个应用程序更新数据库。在第一种情况下,您可以让每个客户机注册一个侦听器,然后每个更新标记所有侦听器。查看聊天服务器的工作方式可以解决所有这些问题

如果有多个应用程序对数据库做出贡献,那么您可以通过创建调用某种通知机制的更新触发器来请求更改或让数据库通知您更改。问题是,这将在数据库之间有所不同,因此是一个更复杂的场景

一些阅读:

基本彗星:

讨论comet vs web Socket和atmosphere框架(如果可用,comet框架将使用WebSocket):


如果使用JPA,他们的回调函数和侦听器可能会很有用:

从您的问题和评论中,您将需要comet类型的功能。如果这是一个可以控制浏览器版本的intranet应用程序,则可以选择web套接字

在后端有一些考虑。也就是说,您的应用程序是否是更新数据库的唯一方法,或者是否有多个应用程序更新数据库。在第一种情况下,您可以让每个客户机注册一个侦听器,然后每个更新标记所有侦听器。查看聊天服务器的工作方式可以解决所有这些问题

如果有多个应用程序对数据库做出贡献,那么您可以通过创建调用某种通知机制的更新触发器来请求更改或让数据库通知您更改。问题是,这将在数据库之间有所不同,因此是一个更复杂的场景

一些阅读:

基本彗星:

讨论comet vs web Socket和atmosphere框架(如果可用,comet框架将使用WebSocket):



如果使用JPA,他们的回调函数和监听器可能会很有用:

你的意思是当它被添加到数据库中时,它应该在UI中显示更多的字段….?是的,确切地说….@Umesh Awasthiwell,那么你需要向视图发送某种信号,表示DB已经更新,否则就无法告诉UI有关它的信息。你不需要使用Ajax,您只需要从数据库中检索字段名,并为每个字段构建适当的UI。最简单的方法是使用由字段名键入的映射来保存表单值。@DaveNewton Hi。我的数据库中有一个表,有两列,标签的名称(名称、年龄等)和输入元素的类型(文本框、下拉列表等),现在我想无论何时手动或通过某种形式向数据库添加任何字段,我都需要使用Struts 2在我的JSP上动态呈现它。应该在jsp上显示相应的输入元素。使用地图会有帮助吗??如何???你的意思是,当它被添加到数据库中时,它应该在UI中显示一个以上的字段…?是的,确切地说…@Umesh Awasthiwell,你需要向视图发送某种信号,表明数据库已经更新,否则就没有办法告诉UI。你不需要使用Ajax,您只需要从数据库中检索字段名,并为每个字段构建适当的UI。最简单的方法是使用由字段名键入的映射来保存表单值。@DaveNewton Hi。我的数据库中有一个表,有两列,标签的名称(名称、年龄等)和输入元素的类型(文本框、下拉列表等),现在我想无论何时手动或通过某种形式向数据库添加任何字段,我都需要使用Struts 2在我的JSP上动态呈现它。应该在jsp上显示相应的输入元素。使用地图会有帮助吗??如何???这是我的场景。我的数据库中有一个表,有两列,标签名称(名称、年龄等)和输入元素类型(文本框、下拉列表等),现在我想无论何时手动或通过某种形式向数据库添加任何字段,我都需要使用Struts 2在我的JSP上动态呈现它。相应的输入元素应该显示在jsp上。我不认为OP说它需要在DB更新时更新屏幕,我只是认为他们希望在DB中列出表单字段。可能是错的,这很难说。@DaveNewton:谢谢……你是ryt……简言之,我想制作定制表格。(就像struts1中的Dynaforms)我如何在struts2中实现这一点……我们有任何标准库吗。我找了一个lot@DaveNewton:你已经提到了,我可以使用地图。你能详细说明一下吗。那么,这个答案根本就脱离主题。这是我的场景。我的数据库中有一个表,有两列,标签名称(名称、年龄等)和输入元素类型(文本框、下拉列表等)现在,无论何时手动或通过某种形式向数据库添加任何字段,我都需要使用Struts 2在JSP上动态呈现它。相应的输入元素应该显示在jsp上。我不认为OP说它需要在DB更新时更新屏幕,我只是认为他们希望在DB中列出表单字段。可能是错的,很难说。@DaveNewton:谢谢。。