Web_Design 板


LINE

※ 引述《luoqr ( )》之铭言: : ※ 引述《luoqr ( )》之铭言: : : 标题: [问题] 关於样版化... : : 时间: Tue Mar 8 16:05:07 2005 : : 请问一下,如果用 JSP 要如何设计样版化的网页? : : 就像 A 网页只是纯 html, B 网页是 jsp 这样, : : 但 A 网页的资料来自於 B : : 是要经过一个 parser 的动作吗? : : 有没有更好的作法? : : 我看到的范例好像都是说 JSP 把资料处理的事情交给後端 : : 但这样好像还是会在 html 中夹杂 jsp 程式码 @@ : : 这样感觉好像不是程式和网页分开... : : 有谁能给我点议建吗? : : 谢谢... : : -- : : 有讨论这种相关的书吗 : : -- : : ◆ From: 140.115.221.131 : : 推 i1mare:不知道可不可以call function到网页,这样程式网页 220.135.196.47 03/09 : : → i1mare:就会分离了 220.135.196.47 03/09 : : 推 marinne:你需要的是JSTL,或者更新的玩意儿JSF 220.135.32.37 03/10 : : → marinne:JSTL的话,O'reilly有一本"JavaServer Pages" 220.135.32.37 03/10 : : → marinne:看这本书学,保证.jsp档案里面不会出现Java code 220.135.32.37 03/10 : : → marinne:O'reilly也有一本书名就叫做"JavaServer Faces" 220.135.32.37 03/10 : : 推 luoqr:感谢 :D 140.115.156.8 03/10 : 刚看了一下,好像是定义一堆 tag,然後直接在网页中 : 使用..... : 但问题来了,如果我今天不喜欢这个版面,我要重新设 : 计一个介面,那这些 tag 不就要再重新嵌入一次? : 像那些 <c:if test.../> 之类的判断式不见得会在 : 同一个地方嵌入吧,那等於重新写一次了不是吗? : 有办法只改 html code,不用动到 jstl 或 jsp code 吗? Life is not that easy. Orz 没错,使用JSTL,你的.jsp档案里面会有一堆<c:if ... />这类标签, 当你要改版面的时候,得重新更动这些JSTL标签。但重点在於所有这些 JSTL标签所代表的逻辑(而且通常都只是简单的if或者回圈等)都只和 版面的呈现方式有关,而与资料的结构(资料以何种型式储存在何种媒介, 以何种方式取得资料等等)或者商业规则(比方说,老板决定购物金额 未满500元,则必须收取70元物流处理费)无关,这些东西都放在你的 class里面,而这些class也不会出现在.jsp档案里面。 这就像使用PHP搭配Smarty样板系统。你的Smarty样板档案(.tpl)里面 会有HTML标签以及一堆Smarty提供的{if},{elseif},{foreach},{section} 这些标签,虽然有(简单的)逻辑在样板档案里面,但是这些逻辑和JSTL 一样,纯粹只和版面的呈现方式有关,而和资料结构与商业逻辑无关。 而你的.php档案里面从此就完全不会出现任何HTML了(再细分的话还可能 把资料结构和商业规则写成class另外储存,处理要求的.php档案只是利用 这些class,把资料丢进去,再把回应的资料丢给.tpl去显示)。 又或者使用code-behind的方式来写ASP.NET程式,你的.aspx档案里面只会 出现HTML以及一堆<asp:DataList... >,<asp:ListBox ...>这些ASP.NET 控制项的设定,而这些HTML和ASP.NET控制项设定也一样纯粹只和版面的 呈现方式有关。你的商业规则和资料存取程式码在xxx.dll里面,你的 xxx.aspx.cs则负责接收与验证资料(这两者里面都不会出现任何HTML), 丢给dll提供的class,再把回应的资料交给.aspx去负责显示在画面上。 所有这些,在改版面的时候都免不了需要重新编排一些HTML以外的东西。 JSTL的标签,Smarty的标签或者ASP.NET控制项的标签。不过这些code和 Java, PHP, C#(VB.NET)程式码相较之下都远远简单得多,而且都仅限於 一些简单的逻辑判断,比起将HTML与程式码混合在一起的做法,修改起来 要容易太多了。 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.135.32.37
1F:推 luoqr:谢谢你的回应 给我很大收获 :) 140.115.156.8 03/11







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BuyTogether站内搜寻

TOP