从jsp到servlet或者action过程中还有很多需要处理的事情:数据有效性验证包括jsp页面的javascript验证和服务器端的验证、对文件上传的处理、文件上传大小的控制、防止二次提交、multipart form的非文件字段的处理。这些事情不属于jsp也不属于action,我们的开发人员会把这些事情直接在jsp里处理或者交给了action处理,当然如果采用了mvc框架来开发的话,有些mvc框架包含了对这部分的处理。 比较著名的有struts的formbean和webwork的拦截器,不过这部分都和各自本身的web框架紧密结合,而且在对数据有效性验证的时候都需要配置相应的文件,但是这样做的同时也增加了开发者关注点,我们不得不关注验证配置文件和jsp表单的统一,而且这两者原始的功能都不是很强大,很多麻烦事情仍然需要我们手工编码来处理。我们强调对jsp页面的关注点就应该集中在jsp中,jsp写完了这部分内容也应该全部完成,但是前提条件是不能增加jsp的工作量,以及改变jsp所承担的角色。
我们不断的手工在做一些有规律的事情,不断的写javascript来验证表单的数据、在action或者其他地方来写服务器端的数据有效性验证、还是再用smartupload来处理文件的上传,计算复杂的上传路径和文件名。其实这些事情完全可以自动完成,无需一行代码。
Jvf是一套标签,准确的说是一个标签,他除去了标签所带来的缺点,留下了标签的优点。因为jsp页面用了标签后导致dreamwave等可视化编辑器对页面很难直接编辑,给页面处理带来难度,但是jvf没有这个问题。在例子中你会看到jvf所写的表单完全是标准的html表单。
而采用jvf将统一这个过程,jvf只是一个组件,不存在任何的依赖,就如smartupload一样使用方便简单,但是功能却十分的强大
可以通过这个地址(例子)来查看jvf简单而强大的例子