struts2-convention-plugin是一个插件,通过这个插件可以实现对于struts2的零配置,基本用法可以参考这个博客(http://javeye.iteye.com/blog/358744)。

我对于struts2-convention-plugin是比较恶心和反感的,我个人反对用这种插件。struts2-convention-plugin用了一些约定的命名方式,让程序员不用配置(或是不用写注解)一些跳转页面了。比如在一个叫做"manage.do"的action里,如果返回的是"success",页面将自动跳转到manage.jsp;如果返回的是"input",页面将自动跳转到"manage-input.jsp"。这确实可以让程序员少敲一些字符,但问题是牺牲了代码的可读性——"success"对应什么页面?"input"又对应哪个页面?为什么这么对应?——一个没学过struts2-convention-plugin的人,是很困惑的。

有人说,“你只要记住了struts2-convention-plugin的命名约定规则,不就行了”。——确实,记住规则的确知道怎么回事了。但有必要么?配置几个跳转页面(或是在注解里)能浪费多少时间?其实软件开发者真正费时的并不是打字,而是逻辑思考。等思考出结果之后,打字根本就不算是活儿。反过来说,java-web程序员要学struts,要学struts2,要学spring,要写hibernate,要学mybatis……要记的东西很多。为了给打字带来一些小方便,让开发者去死记硬背一些规则,我觉得得不偿失。不如给开发者减减负,其实知道J2EE核心的那些东西,任何框架都万变不离其宗。况且代码可读性的重要也不言而喻。

我的观点,把struts2-convention-plugin丢进太平洋。

——一家之言,不一定正确。看官们可以反驳,可以讲理,但不要人身攻击。

把struts2-convention-plugin丢进太平洋的更多相关文章

  1. Struts2 Convention Plugin ( struts2 零配置 )

    Struts2 Convention Plugin ( struts2 零配置 ) convention-plugin 可以用来实现 struts2 的零配置.零配置的意思并不是说没有配置,而是通过约 ...

  2. struts2使用Convention Plugin在weblogic上以war包部署时,找不到Action的解决办法

    环境: struts 2.3.16.3 + Convention Plugin 2.3.16.3 实现零配置 现象:以文件夹方式部署在weblogic(10.3.3)上时一切正常,换成war包部署,运 ...

  3. Struts2 - Conversion Plugin

    转载:http://www.cnblogs.com/ikuman/archive/2013/11/04/3403073.html 1.struts2自2.1以后推荐使用Convention Plugi ...

  4. struts2 convention插件

    1.struts2自2.1以后推荐使用Convention Plugin支持struts零配置支持(引入jar:struts2-convention-plugin-2.x.x.jar)①convent ...

  5. Struts2 Convention插件的使用(4)使用@Action注解返回json数据

    package com.hyy.action; import java.util.HashMap; import java.util.Map; import org.apache.struts2.co ...

  6. Struts2 Convention插件的使用(3)方法前的@Action注解

    package com.hyy.action; import org.apache.struts2.convention.annotation.Action; import com.opensymph ...

  7. ssi整合报错org.apache.struts2.convention.ConventionsServiceImpl.determineResultPath(ConventionsServiceImpl.java:100)

    java.lang.RuntimeException: Invalid action class configuration that references an unknown class name ...

  8. struts2 Convention插件零配置,使用注解开发

    从struts21开始,struts2不再推荐使用codebehind作为零配置插件,而是改用Convention插件来支持零配置.与以前相比较,Convention插件更彻底. 使用Conventi ...

  9. Struts2 convention插件试用+ Spring+Hibernate SSH整合

    第一步,引入struts2-convention-plugin-2.2.1.jar 然后,改动配置文件. 我是在struts.properties文件里改动的: struts.objectFactor ...

随机推荐

  1. UI实时预览最佳实践(转)

    UI实时预览最佳实践 概要:Android中实时预览UI和编写UI的各种技巧.本文的例子都可以在结尾处的示例代码中看到并下载.如果喜欢请star,如果觉得有纰漏请提交issue,如果你有更好的点子可以 ...

  2. Cookie的读写

    记住怎么写就可以了,不要问我为什么=_= 设置值的页面:context.Response.SetCookie(new HttpCookie("username",username) ...

  3. 移动页面缩放方法之(三)rem布局

    <!DOCTYPE HTML> <html lang="zh-cn"> <head> <meta http-equiv="Con ...

  4. Activity中setResult(int resultCode, Intent data)与onActivityResult(int requestCode, int resultCode, Intent data)方法的调用

    关于Activity的生命周期 onCreate(Bundle savedInstanceState):可以进行一些初始化的工作在activity第一次被创建的时候调用.这里是你做所有初始化设置的地方 ...

  5. CSS 布局Float 【4】

    一些浮动模型的基本知识:浮动模型也是一种可视化格式模型,浮动的框可以左右移动(根据float属性值而定),直到它的外边缘碰到包含框 或者另一个浮动元素的框的边缘.浮动元素不在文档的普通流中,文档的普通 ...

  6. Hibernate中HQL语句中list与iterate区别

    session.createQuery("from Classes").list() session.createQuery("from Classes").i ...

  7. Linux系统中,main函数的执行过程

    http://blog.csdn.net/rrerre/article/details/6728431

  8. 关于表单的jQuery练习

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...

  9. LoadRunner安装停在注册界面安装失败----解决办法之一

    今天下了个LoadRunner11.5玩玩,准备测手头上准备发布的项目性能,结果安装的时候,报错“Error Creating system registry entry”,在51testing搜索各 ...

  10. CSS3中更灵活的布局方式

    flex是一个灵活性强的布局方式,它能够很好的控制内部元素的宽度,高度或者剩余的空间部分,来适应不同的显示设备和不同的屏幕尺寸,而真正达到一种自适应效果. flex布局与常规布局截然不同,常规布局虽然 ...