论坛首页 Web前端技术论坛

[XSL版本][介绍]编辑页面中的表单自动生成,以及更新页面中...

浏览 5689 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2004-03-31  
目前有一个系统,采用hibernate,有6个持久类。通过web维护,需要判断所有的表单项,还是比较痛苦的。

目前采用了一种新的方式
页面之间传递po的Id值

编辑页面edit.jsp
中通过 net.sf.hibernate.xml.XMLDatabinder
将po转换为xml形式表现。
例如

	<object class="Folder" package="demo">
		<id name="id" type="long">2</id>
		<collection name="children" class="java.util.Set" element-type="demo.Component" lazy="initialized">
			<element class="File" package="demo">
				<id name="id" type="long">7</id>
			</element>
			<element class="File" package="demo">
				<id name="id" type="long">6</id>
			</element>
			<element class="Image" package="demo">
				<id name="id" type="long">5</id>
			</element>
			<element class="Link" package="demo">
				<id name="id" type="long">4</id>
			</element>
			<element class="Image" package="demo">
				<id name="id" type="long">3</id>
			</element>
		</collection>
		<property name="orderNum" type="long">0</property>
		<property name="name" type="string"><![CDATA[folder 2]]></property>
		<property name="createTime" type="timestamp">05 aa 2005 13:36:00</property>
		<property name="folder" class="Folder" package="demo" type="demo.Folder">
			<id name="id" type="long">1</id>
		</property>
		<property name="hidden" type="boolean">true</property>
		<property name="icon" type="string"/>
	</object>


XMLDatabinder 还可以使用一个xslt文件作为参数
然后通过xslt将xml转换为表单
通过xslt这里有无限的扩展空间。

整个表单将值发送到 update.jsp

update.jsp 中通过
net.sf.hibernate.metadata.ClassMetadata
来更新po,而不必自己使用类反射。
   发表时间:2004-03-31  
http://www.opensymphony.com 
看看例子。hibernate的adminapp就演示了如何结合webwork2和hibernate。不过WebForm的生成还是要靠楼主的产品。
0 请登录后投票
   发表时间:2004-04-03  
dingyd 写道
建议你去看看代码自动生成的工具,可以实现你要的功能.

看他的意思是要动态生成吧,目前的Code Generator基本上都是静态的。
0 请登录后投票
   发表时间:2004-04-06  
fahrenheit 写道
dingyd 写道
建议你去看看代码自动生成的工具,可以实现你要的功能.

看他的意思是要动态生成吧,目前的Code Generator基本上都是静态的。


不是,目前已经已经有雏形了,后来重新理了一下思路,其实类似Debug中的Watch。
唯一的不同是在Web上,数据的传输是通过字符串通过Post/Get发送,因此就是一个Object to String 的序列化,以及从String中再生。
0 请登录后投票
   发表时间:2004-04-06  
chenggn2 写道
fahrenheit 写道
dingyd 写道
建议你去看看代码自动生成的工具,可以实现你要的功能.

看他的意思是要动态生成吧,目前的Code Generator基本上都是静态的。


不是,目前已经已经有雏形了,后来重新理了一下思路,其实类似Debug中的Watch。
唯一的不同是在Web上,数据的传输是通过字符串通过Post/Get发送,因此就是一个Object to String 的序列化,以及从String中再生。

这一部分可以参考webwork等框架的实现啊。
0 请登录后投票
   发表时间:2004-04-10  
hoho,鼓掌~
嘿嘿,这样的结构俺们2002年就开始用了~效果很好~

后来还延伸到xml,自动从客户端发起请求,用xmlhttp获取查询结果~~
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics