现在市面上这么多的java web 开发框架,struts2,spring mvc,wicket,tapestry,stripes,click....随便列一些就很多了,在web应用开发和维护的时候,我们会关注哪些功能呢?
提到现在的web框架,我们的第一印象是什么?POJO controller?支持spring,支持guice,支持EJB3?至于View呢,我们支持jsp、freemarker、 velocity、JSF、xxx template,view层,也就tapestry有点性格,考虑了一些问题(后来wicket可以认为是"借鉴"他的理念)
大部分的框架,支持模板系统,就宣称我们的业务逻辑和展示是分离的,但是实际操作起来,这个程度上的分离还远远不够,要做好也很困难,但是现在,我需要一个View层的解决方案。
一些经常碰到的问题:
*运营人员说:要修改一个链接和一段文本,因为在一个动态页面里面,需要开发人员来动手,于是在某个应用上(或几个)做分支,修改,测试,预发布,发布
靠,我就改这么点东西,告诉我需要1个工作日,还得申请紧急发布(得老大批准)
*开发人员说:UED的同学怎么又把模板里的一个变量给搞掉了,内容又不正确了(甚至是页面500了)
*法务说:有个推广链接要拿掉,全给我找出来干掉!不然老板要被请去喝咖啡了。
要解决这些问题,我期望的View层能够:
*很好的分离逻辑与显示,不是宣称,而是真正解决问题,不过还没想好是什么样子
*动态内容和静态内容很好的分离,静态的资源有很好的抽象和管理
*简单直白的开发维护方式