论坛首页 Java企业应用论坛

从.vm、.do、.action说起

浏览 12923 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2004-07-19  
不知什么进时候我们的Web网站上多了一些.XX的网页,熟悉Java的朋友都知道以使用一种新的Servlet技术。.vm是Velocity的应用,.do是Struts的应用,.action是WebWork的应用。细细斟酌其实都是Servlet技术的扩展,通过定义自己的Servlet解析不同应用的扩展名。带给我们的确实不是简单的文件扩展名的使用,是一种新的开源的启示。越来越多的开源项目进入我们的生活,我们可以从中找到些什么。
    JSP是我们都比较熟悉的一种语言,他可以在页面直接嵌套Java代码、Script、Tag标签。我们在应用的时候越来越发现在页观嵌套业务逻辑是不可取的,我们需要使用新的MVC模式的Web框架。Struts是通过扩展Servlet通过JSP/html作为表示层;WebWork是比Struts轻型的MVC应用,扩展了Servlet的派遣机制通过Velocity提供给WebWork的工具应用扩展Tag实现显示,WebWork2不仅仅可应用在Web层;Velocity是一个模板框架,它可以应用在Web层也可以运行在应用程序层。
 相信开源带给我们的不仅仅是思考,我们可以借鉴,我们会有一种想创作的冲动,我们也会很快加入开源大军。
   发表时间:2004-07-19  
说了些什么?还是什么也没有说?
0 请登录后投票
   发表时间:2004-07-19  
看url说明不了什么问题,可以任意的改写
就算全是htm的url,底下也可能是使用别的技术
0 请登录后投票
   发表时间:2004-07-19  
挺不错的,起码使我知道了.vm使velocity,action是webwork^_^
0 请登录后投票
   发表时间:2004-07-20  
无明 写道
看url说明不了什么问题,可以任意的改写
就算全是htm的url,底下也可能是使用别的技术


的确如无明所言,struts我也可以用.action,.vm,.go,.do等等,都可以呀,当从url的确看不出什么的,千万不要被弄迷糊了。
0 请登录后投票
   发表时间:2004-07-20  
我的后缀都是fms(fuck m$,??)哦。其实是Struts这其实可以随便设置的,取决于你servlet Mapping 的设置。
0 请登录后投票
   发表时间:2004-07-20  
当然可以随意配置,确实框架扩展了Servlet技术。Java的Web应用核心就是Servlet技术,难道不能从中看到一些借鉴吗?虽然都是扩展Servlet,但是方向确实不同。
Struts是使用推的技术,WebWork是使用拉的技术。

推指的是你不必请求,事先定义好规则,服务器就给你发过来报。(广播方式)
拉则指的是只有你请求,服务器才进行有关操作。(点对点操作)

------------------------------------------------------------------------------------
文章的主题是,我们可以通过使用框架技术,随意配置自己的应用。列出了一些常用的后缀。只是觉得不是为了学技术而学技术,多一点思考。如果有勇气、有信心、可以加入开源的大军中。
0 请登录后投票
   发表时间:2004-07-20  
>>Java的Web应用核心就是Servlet技术
不同意这个观点,servlet虽然重要,但不应围绕它设计我们的应用.
事实上webwork的设计就有减弱对servlet依赖的意思.

我觉得spring的mvc模式设计更好,也更灵活.

>>Struts是使用推的技术
这是什么意思?不向服务器发出请求,服务器能向浏览器发送什么东西?
0 请登录后投票
   发表时间:2004-07-20  
Struts好像还没有推的功能吧?
0 请登录后投票
   发表时间:2004-07-21  
无明 写道
>>Java的Web应用核心就是Servlet技术
不同意这个观点,servlet虽然重要,但不应围绕它设计我们的应用.
事实上webwork的设计就有减弱对servlet依赖的意思.

我觉得spring的mvc模式设计更好,也更灵活.

>>Struts是使用推的技术
这是什么意思?不向服务器发出请求,服务器能向浏览器发送什么东西?




JSP是最终会编译成Servlet,Servlet是终会编译成class文件。WebWork是减弱了在表示层从Servlet的依赖,可实际上是引用了velocity的框架,使用velocity tools,可查看velocity的代码。

Webwork基于“Pull HMVC”机制 ——分级请求MVC(请求或拉PULL相对于推送—PUSH)。

Struts使用推的技术也许从说法上并不具有权威性,也是看了一些资料。
引用:
http://gceclub.sun.com.cn/NASApp/sme/jive/thread.jsp?GXHC_JSESSIONID=-7893437444883785961&forum=8&thread=8535
[原文]答案就是使用Tag技术,通过使用Tag技术,我们就可以在页面程序中不出现JSP代码,在需要数据的地方,大家先约定好标签,然后由Tag的后台处理程序去替换这些标签,显示数据。我称这种技术叫做向页面推数据,页面只要定义好格式就行了。这样,我们可以让HTML开发人员专注于页面的外观,而Java程序员则不用理会页面显示,专注于后台程序,大大提高了程序的可维护性和方便性。便于各程序员之间的协作开发。

http://java.mblogger.cn/neozer/posts/2759.aspx


http://www-900.ibm.com/developerWorks/cn/webservices/ws-mvc/part1/index.shtml
[原文]
在模型发生改变时,视图将负责在它的表示中保持一致性。这可以通过使用推(push)模型(视图向该模型注册,以获取它的改变通知)来实现,也可以用拉(pull)模型(此时视图负责在需要检索最新数据时调用模型)来实现。


================================
有什么不正确的地方,欢迎大家指正。觉得大家一起思考,一起总结不胜荣幸
0 请登录后投票
论坛首页 Java企业应用版

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