`
jindw
  • 浏览: 510165 次
  • 性别: Icon_minigender_1
  • 来自: 初到北京
社区版块
存档分类
最新评论

有没人和我一样厌倦了MVC框架各自定义的那些JSP标记库呢

阅读更多
JSP的标记库大家应该都不陌生了。
确实,他可以吧一些页面逻辑更加简单的封装一下。
可以减少不少代码。

但是Struts一套,Webwork一套,JSF又是一套,我们还活不活了。

其实,我感觉很多标记库真的很鸡勒。

比如说:
struts的html:input,Webwork的 ww:textfield等等。
使用标记库后,我没有感觉到简单多少,反而增加了不少学习负担,是不是的莫名奇妙的错误。我以前就常把html:text用作输入表单。还有用来表示select控件的那些标记库,更是让人头疼(本人记性不好,学了又忘,忘了又学)


这类玩意根本也没必要自立一套标准。
很多事情直接用html语法就可以表示清楚,虽然各个框架自己定义了一套标准确实更加简单一点点。
分享到:
评论
33 楼 ThinkInJava 2008-10-27  
也是EL的受益者,用着不错,简单实用!应该推广
32 楼 aws 2008-10-27  
其实都是个习惯问题
31 楼 ray_linn 2008-10-27  
struts 的标签太蠢,太紧。无论是form里的theme,还是别的什么DataPicker的都是无法忍受的垃圾,甚至连一个错误输入,都很粗鲁的给你塞了一个<DIV>。
30 楼 tao2552 2008-10-27  
标签大都是很简单的东西。就算是重新学习也应该是很简单的,从一种标签过渡到另一种花费的精力很小吧。

如果是struts1.x  建议jstl替换struts1.x的标签库。
要是struts2.x   还是建议用它自己的标签的,毕竟他是比 jstl好的。

29 楼 ehow 2008-10-27  
freemarker!
28 楼 梦秋雨 2008-10-27  
内涵越广,外延越窄。功能越强大,你要使用所受的限制、所需要了解的内涵就会越多,这规律不太可能被打破。所谓简单,大多是抛却了一些框架可以做但不一定能做好的事情给具体项目开发人员去做。对与错也不是铁上钉钉。
27 楼 aaronluo 2008-10-27  
Tapestry很方便,美工作UI,程序员写逻辑
26 楼 amonlei 2008-10-27  
zxming12345 写道
没办法,自己封装一套ui吧。这样就好了。当然公司的人手够多。美工也的很厉害。我们部门的ui都封装到了标签里,这样,开发起来就很简单了。

更牛了,不用别人造的轮子,自己再重新造,第三套轮子
25 楼 wang19841229 2008-10-27  
我现在在项目中就是JSTL标签,struts的标签几乎不用,这样连actionfrom也省了。
24 楼 sunwei_07 2008-10-27  
反正我一直用JSTL,其他一律无视,倒不是说不好,如果换个框架就换个使用方式,那不是要死了啊
23 楼 smilerain 2008-10-27  
Freemarker 天天见
22 楼 打倒小日本 2008-10-26  
支持楼主
很多时候<c:forEach /><c:if />两个标签就够了
21 楼 jindw 2008-10-26  
fireflyc 写道
模板还是JSP的好。
为啥?
首先EL语言已经很好用了。
如果EL语言解决不了的问题,我们可以直接写java代码
至少我不是老学究,但凡在jsp里面写上一行代码就认为是不好的做法。


还是别打开潘多拉的盒子的好,我以前的做法事,直接在web.xml里面禁用jsp的执行脚本的能力。

表现层的东西,我只许你用el和tag。
20 楼 fireflyc 2008-10-26  
模板还是JSP的好。
为啥?
首先EL语言已经很好用了。
如果EL语言解决不了的问题,我们可以直接写java代码
至少我不是老学究,但凡在jsp里面写上一行代码就认为是不好的做法。
19 楼 jindw 2008-10-26  
wuliwei85 写道
其实就JSTL+EL就完全满足了,而且JSTL是SUN推出的标准!

对于STRUTS,它的标签确实不是那么好用,我们可以不用,并不因为我们用STRUTS就得同时用它的标签,况且它的标签还不怎么方便,对于任何技术我们都要学会取其精华而舍糟粕!



我认同。
虽然我更希望他能提供一个else标记(妄想)。
但是,既然他是标准,那就向标准靠拢吧。

以前一个搞建筑的表弟给我讲关于标准的定义:
标准往往不是最优秀的,但那一定是经过验证的,稳定可行的,并被广泛认同的规范.....

我感觉这个总结很到位。
18 楼 wuliwei85 2008-10-26  
其实就JSTL+EL就完全满足了,而且JSTL是SUN推出的标准!

对于STRUTS,它的标签确实不是那么好用,我们可以不用,并不因为我们用STRUTS就得同时用它的标签,况且它的标签还不怎么方便,对于任何技术我们都要学会取其精华而舍糟粕!
17 楼 jindw 2008-10-26  
congpeixue 写道
<c:choose 不也用的很happy 

choose明显没有if else简单方便了。
还有那个otherwise,这个单词都有点陌生了,往往写的时候还要想想,这个单词是这么写的吗?没有拼错吧。

16 楼 congpeixue 2008-10-26  
<c:choose 不也用的很happy 
15 楼 jindw 2008-10-26  
恩,是的:
velocity以及CommonTemplate这类模板引擎,在处理标记语言的时候,有一个缺点就是不能充分发挥标记语言自身的优点,如处理可选属性的时候很麻烦。
这点在webwork标记库模板里面有非常明显的反映
velocity:
<input
      #if(${action.click!=null})
      onclick= "${action.click}“
      #end
      #if(${action.dblclick!=null})
      ondblclick= "${action.dblclick}“
      #end>

xml模版:
<input  onclick = "${action.click}"
        ondblclick= "${action.dblclick}" >



JSTL没有else标记,这点也让人很郁闷。
WW的iterator标签设计的有点复杂。


单从模板语法上看,我还是觉得梁飞的的CommonTemplate最直观易用。
14 楼 nihongye 2008-10-26  
相比velocity,jstl+el还是复杂了

相关推荐

    CodeIgniter(PHP MVC开源框架)v3.1.10.zip

    如果你是一个使用共享主机,并且为客户所要求的期限而烦恼的开发人员,如果你已经厌倦了那些傻大笨粗的框架 CodeIgniter 是为谁准备的? CodeIgniter 就是你所需要的,如果... 你想要一个小巧的框架。 你需要...

    CodeIgniter php mvc框架 中国网站

    CodeIgniter 是一个小巧但功能强大的 PHP 框架,作为一个简单而“优雅”的工具包,它可以为 PHP 程序员建立...如果你是一个使用共享主机,并且为客户所要求的期限而烦恼的开发人员,如果你已经厌倦了那些傻大笨粗的框架

    CodeIgniter v1.7.3 开源框架

    如果你是一个与人共享主机并且为客户要求的期限而烦恼的开发人员,如果你已经厌倦了那些傻大笨粗的框架,那么 CodeIgniter 就是你所需要的,如果... * 你想要一个小巧的框架。 * 你需要出色的性能。 * 你需要广泛...

    Python框架FuqIt.zip

    我已经厌倦了 MVC 愚蠢的规则,想尝试更简单的方法。我希望只要将一些文件随便放到某个目录,就可以工作。这就是 FuqIt,我自己的一个 Python 框架。 标签:FuqIt Web框架

    CodeIgniter开源框架php版v3.1.10

    如果你是一个使用共享主机,并且为客户所要求的期限而烦恼的开发人员,如果你已经厌倦了那些傻大笨粗的框架 CodeIgniter 是为谁准备的? CodeIgniter 就是你所需要的,如果... 你想要一个小巧的框架。 你需要...

    大学生学业厌倦情绪综述分析及表现

    厌倦情绪的定义多种多样,Berlven将其视为与唤醒水平相关的一种状态,而Barbalet则强调它是对无趣环境的烦躁反应。扎克母则认为厌倦与个体的唤醒水平、注意力和对刺激的理解有关。Mikulas等人和Csikszentmihalyi则...

    AutoMapperFramework:是否厌倦了单一的地图定义文件? AutoMapperFramework 从实现头接口的类型生成映射

    是否厌倦了单一的地图定义文件? AutoMapperFramework 从实现头接口的类型生成映射。 它是如何工作的? 首先,您需要通过 NuGet 安装包: PM&gt; Install-Package AutoMapperFramework 接下来,您需要使用三个头接口...

    Spring-MVC-Twirl:Spring MVC 的 Twirl 模板

    Spring-MVC-Twirl Spring MVC & ( ) 模板中的实验。 对于那些厌倦了典型的 JSP 和组合框架(如 Apache Tiles、Twirl 编译时检查和模板内组合)的人来说,它可以实现更快、更安全、更清洁的工作流程。

    CodeIgniter v1.7.3 开源PHP框架.rar

    如果你是一个与人共享主机并且为客户要求的期限而烦恼的开发人员,如果你已经厌倦了那些傻大笨粗的框架,那么 CodeIgniter 就是你所需要的,如果... * 你想要一个小巧的框架。 * 你需要出色的性能。 * 你需要广泛...

    emerald2d:2D游戏的Javascript框架

    这个项目最初被命名为 EmeraldJs,但有很多以 Js 结尾的选项,我已经厌倦了 Xjs 的命名。 这是一项正在进行的工作,(我刚刚开始)。 主要思想是拥有一个功能齐全的框架,允许任何人通过添加自定义组件并将它们链接...

    PitchBlade:PHP 5.4+ 快速原型框架

    因为我厌倦了在创建原型时重写和/或复制/粘贴代码。 我们真的需要另一个该死的框架吗? 不,我们真的没有。 请不要制作另一个该死的框架。 但是但是你说... 是的,我做到了。 问完了吗? 执照

    e4e-2013-es6:2013 年 e4e 会议上 JavaScript 模块的未来

    我厌倦了使用 Powerpoint 和 Keynote 进行制作和演示,所以我编写了这个框架。 它使用纯 HTML 中的幻灯片,结合 CSS 中的主题、布局和幻灯片转换,以及一个用于显示它们的小型 Javascript MVC 框架。 您可以在 阅读...

    python库参考手册

    python库参考手册五年前我偶然遇到了 Python, 开始了我的 Python 之旅, 我花费了大量的时间在 comp.lang.python 新闻组里回答问题. 也许某个人发现一个模块正是他想要的, 但是却不知道如何使用它. 也许某个人为他的...

    十大使用PHP框架的理由

    框架通常会定义一些标准文件夹结构,比如模型(model)、视图(view)和控制器(controller),以及库(library)和配置(configuration)等,使得项目结构更为清晰。这不仅便于个人开发者管理代码,也利于团队协作时的代码...

    python-obfuscator:我已经厌倦了编写好的代码,所以我制作了好的代码来制作了不好的代码

    一天晚上,我厌倦了编写好的代码,所以我制作了好的代码来制作了不好的代码。 考虑赞助我 正在安装 pip install python-obfuscator 快速开始 打印出混淆的代码 pyobfuscate -i your_file.py 将更改应用于输入文件 ...

    CodeIgniter 框架

    CodeIgniter 是一个小巧但功能强大的 PHP 框架,作为一个简单而“优雅”的工具包,它可以为 PHP 程序员建立...如果你是一个使用共享主机,并且为客户所要求的期限而烦恼的开发人员,如果你已经厌倦了那些傻大笨粗的框架

    微型php框架代表作CI

    CodeIgniter 是一个小巧但功能强大的 PHP 框架,作为一个简单而“优雅”的工具包,它可以为 PHP 程序员建立...如果你是一个使用共享主机,并且为客户所要求的期限而烦恼的开发人员,如果你已经厌倦了那些傻大笨粗的框架

    使用 Promptr 和 GPT 自动化您的代码库 您是否希望使用 GPT 简化您的代码操作,但厌倦了复制粘贴过程?

    Promptr 是一个开源的命令行工具,专为程序员设计,旨在简化使用 GPT(Generative Pre-trained Transformer)模型,如 GPT-3 和 GPT-4,自动化代码库的维护和改进过程。这个工具消除了将代码复制粘贴到 AI 模型中...

    BaptisteCrouzet:我的自述文件项目。 在我的公共存储库上显示最新更改!

    这就是为什么我喜欢Symfony框架,带有PHPCS的PSR标准,Docker / Docker组合以及Github Actions或gitlab管道之类的存储库自动化的原因。 我也对新JavaScript框架(例如VueJS / Svelte以及更一般的JAM-Stack网站)感...

    proxy-helper:该库动态创建代理。 我厌倦了为每个 WCF 服务创建代理类,也厌倦了看到这些代理没有正确处理。 这个库不限于 WCF,你也可以用它来实例化对象,所以你可以很容易地用 WCF 服务切换本地“服务”

    我厌倦了为每个 WCF 服务创建代理类,也厌倦了看到这些代理没有正确处理。 不过,这个库并不限于 WCF,您也可以将它用于对象实例化,因此您可以非常轻松地将本地“服务”切换到 WCF 服务(希望很快可以使用 REST ...

Global site tag (gtag.js) - Google Analytics