MVC的View在web方式下的技术选择

              
wys1978 03-07-23

在Web上,给user做交互的界面通常是利用html的form元素(input, select, radio box, check box, etc), 我在以前一个应用系统中,有很多form,写这些代码会是一个比较繁琐的工作,而且容易出错, 比方说form元素的名字拼写的一个小错误,就导致不能正确的传递参数. 而这些元素的名字通常都会和M层里的Object的属性对应, 和O/R Mapping里面的定义文件的field对应.

以上只是谈了感到View开发不方便的一点, 还有其他的问题,比如数据校验,多语言支持等都是蛮繁琐的劳动. 就不举例说明了.

如果有一种web framework可以帮我们处理这些繁琐的机械劳动, 会轻松很多.

在网络上搜索了一些资料, 没有找到理想的架构, 说一下我的要求, 如果大家有知道类似的架构,请帮忙推荐一下.

1. Form 处理, 用xml定义的方式定义form,form定义可以继承, form元素可以扩展, 这样多个页面可以共用一些form定义. 最好可以根据O/R Mapping的定义文件生成原始的代码供修改.

2. 常用数据校验(长度,数据类型, 正则表达式), 只用写一段定义文件, 客户端和服务器端就都可以支持, 可以通过配置文件来决定disable/enable client or server 模式.

3. 多语言支持, 有一些现成的代码, 但是View上的代码量都蛮多的, 用一堆的jsp tag感觉不是很方便.

4. Template, 支持template 语言 (Velocity, FreeMaker etc).

KillerMan
2003-07-23 23:21

MVC的view的可选择的技术方案很多。使用html并不是唯一的选择。

单就你提的问题而言,在html的view中,表单的保存、修改以及校验都是可以做到自动化的,关键是你业务规则的指定。如果你可以指定一套规则在V/M中都可以理解,那么,最终你的整个程序就只剩下了一个装配器而已。

此时那些繁琐的view方面的事情就可以避免了。

ruby
2003-07-24 10:11

to:sinio_feng
可不可稍微展开讲一下呢
我在用的时候觉得view中的表单处理最为麻烦,也容易出错,却苦于找不到简化工作量的方法。

wys1978
2003-07-24 15:36

quote sinio_feng
>> 单就你提的问题而言,在html的view中,表单的保存、修改以及校验都是可以做到自动化的,关键是你业务规则的指定。如果你可以指定一套规则在V/M中都可以理解,那么,最终你的整个程序就只剩下了一个装配器而已。 <<

有没有什么opensource的framework在做这方面的工作呢?

banq
2003-07-24 17:05

to wys1978
Struts是你要求的最好选择,除了第一条我有点模糊之外,其他都非常Exactly!

3Go 1 2 3 下一页