专栏名称: 码农翻身
工作15年的前IBM架构师分享好玩有趣的编程知识和职场的经验教训, 不容错过。
目录
相关文章推荐
51好读  ›  专栏  ›  码农翻身

JSP: 一个装配工的没落

码农翻身  · 公众号  · 程序员  · 2016-11-30 20:06

正文

请到「今天看啥」查看全文



看看这张图, 你应该能明白ASP装配工是怎么干活的,  页面看起来就像是一个html静态文本, 被包裹的就是代码了, 装配工需要运行他们, 然后把产生的数据嵌入到html当中。


由于微软的强势, ASP这厮可真是火了一把, 尤其是在中国。


我们Sun公司看到这种情况, 自然会奋起直追, 很快我这个装配工JSP  (Java Server Pages)就诞生了。


ASP主要用VBScript 这样的脚本语言 ( 唉, 我估计微软的Bill Gates实在是太喜欢VB了, 连一个脚本语言也要搞的VB很像), 我就完全不同了, 我用的可是被无数人喜爱的Java, 跨平台啊。


每当我用这一点嘲笑ASP的时候, 他都会说:  “别整天在这里乱喷了, 说来说去, 你本质上不也是一个模板吗?   你看看你装配的那些页面, 代码和HTML混杂在一起, 搅的乱七八糟, 没有任何美感。 对了,听说你有个JSP中太长了,竟然爆出了无法编译的错误, 实在是太可笑了, 哈哈哈。”


ASP说的没错, 有个不着调的码农把绝大部分的业务逻辑都搞到了JSP 当中, 我实在是无法装配, 只好报错。


不过ASP也好不到哪里去, 也是HTML中混杂这大量代码。


3

标签库


Java 老哥最近整天给我吹MVC这个东西, 说是能够把展示和逻辑分开, 他可以用Servlet来充当控制器,  用Java类来充当模型, 而视图自然就是我JSP了。


我想想确实不错, 分开以后能阻止码农往我这里写代码, 就这么办吧。


但是有时候界面上显示逻辑还是必不可少, 所以像分支、循环这样的控制语句不可或缺,  Java老哥建议我做一层封装,   给码农们提供了一套标准的,叫做JSP Standard Tag Library (JSTL)东西, JSTL 长这个样子:

这些 , 就是标签了, 写起来略微有点啰嗦,  看起来还是不错的。


本质上他们都是Java 类而已, 他们能接收到你给他传递的参数, 进行计算,输出HTML。


${names}是从哪里来的?  自然是从MVC的模型那里来的。


有些人还叫嚣着JSTL完全不够用, 没关系, 我开放接口给你, 你可以扩展,定义自己的Tag library,  想怎么写就怎么写, 写破天去我也不管。  我只要求我要装配的页面保持清爽, 这一点绝不妥协。







请到「今天看啥」查看全文