天天看点

sitemesh来装饰动态的左侧菜单和内容部分sitemesh来装饰动态的左侧菜单和内容部分

sitemesh鏉ヨ楗板姩鎬佺殑宸︿晶鑿滃崟鍜屽唴瀹归儴鍒?/h1>

聽 聽 聽 聽sitemmesh鏄竴涓〉闈㈣楗版鏋讹紝鍒╃敤瀹冨彲浠ュ緢绠€鍗曠殑瀵规暣涓郴缁熻繘琛岀粺涓€鏋舵瀯瑁呴グ锛屾瘮濡備竴涓簲鐢ㄧ郴缁熺殑web灞傚彲鑳藉氨鏄痶op+left+content+footer鍥涗釜閮ㄥ垎缁勬垚(涓嬪浘)

sitemesh来装饰动态的左侧菜单和内容部分sitemesh来装饰动态的左侧菜单和内容部分

浣跨敤sitemesh瀹氫箟濂戒竴涓粺涓€鐨勬鏋跺悗锛岀▼搴忓憳鍙渶瑕佸叧娉ㄥ姩鎬佺殑鍐呭閮ㄥ垎灏卞彲浠ヤ簡锛岃€屼笉闇€瑕佸湪姣忎釜椤甸潰鍘诲崟鐙殑include涓€鍫嗙殑footer,left,header涔嬬被鐨勫叕鍏遍儴鍒?-妗嗘灦鍙槸涓€涓伐鍏凤紝瀛樺湪鐨勭洰鐨勫湪浜庢彁楂樼敓浜х巼锛屽噺灏戦噸澶嶅姵鍔ㄣ€?

浠ヤ笅鏄繖涓猻itemsh鐨勮楗伴〉闈㈡簮鐮?

  1. <%@聽page聽contentType="text/html;聽charset=GBK"%>聽聽
  2. <%@聽taglib聽uri="http://www.opensymphony.com/sitemesh/decorator"聽prefix="decorator"聽%>聽聽
  3. <html>聽聽
  4. 聽聽聽聽聽<head>聽聽
  5. 聽聽聽聽聽聽聽<title><decorator:title聽default="瑁呴グ鍣ㄩ〉闈?.."聽/></title>聽聽
  6. 聽聽聽聽聽聽聽<decorator:head聽/>聽聽
  7. 聽聽聽聽聽</head>聽聽
  8. 聽聽聽聽聽<body>聽聽
  9. 聽聽聽聽聽聽聽<jsp:include聽page="/header.jsp"></jsp:include>聽聽
  10. 聽聽聽聽聽聽聽<jsp:include聽page="/left.jsp"></jsp:include>聽聽
  11. 聽聽聽聽聽聽聽<decorator:body聽/>聽聽
  12. 聽聽聽聽聽聽聽<jsp:include聽page="/footer.jsp"></jsp:include>聽聽
  13. 聽聽聽聽聽</body>聽聽
  14. </html>聽聽

闈炲父绠€娲佹槑浜嗭紝鎶婇〉闈㈡媶鎴愬彲澶嶇敤鐨勭粍浠跺崟鍏冿紝閫氳繃jsp include鏉ュ紩鍏?

瀹為檯鐢熶骇涓殑闂

鍋氫竴涓郴缁燂紝鍙兘鏈夊涓ā鍧楃粍鎴愶紝閫氬父浼氱粰姣忎釜妯″潡鍒嗛厤涓€涓猲amespace鎴杙ackage,濡備竴涓敤鎴风鐞嗙郴缁熷彲鑳芥湁user鍜宻ystem涓や釜妯″潡缁勬垚锛岄偅涔堝叾璁块棶閾炬帴寰堝彲鑳芥槸http://localhost:8080/user/userList.action鍜宧ttp://localhost:8080/system/sysConfig.action,杩欎釜鏃跺€欏浜庝笉鍚屾ā鍧楀叾瀵瑰簲鐨勫乏渚ц彍鍗曟垨header閮ㄥ垎寰堝彲鑳芥槸涓嶅悓鐨勶紝濡倁ser妯″潡宸︿晶鑿滃崟鏄垱寤虹敤鎴凤紝淇敼瀵嗙爜锛岃€宻ystem妯″潡鍒欐槸閰嶇疆绯荤粺鍙傛暟锛屽彂閫乪mail绛夛紝鎬庢牱鐢╯itemesh鏉ュ疄鐜板浜庝笉鍚屾ā鍧楀姞杞戒笉鍚岀殑宸︿晶鑿滃崟鐨勭洰鐨勫憿锛熼€氬父鏈変袱绉嶆柟寮?

1.鍒涘缓澶氫釜decorator,涓烘瘡涓ā鍧楅兘鍒涘缓涓€涓崟鐙殑decorator,鍦╠ecorator閲屽姞杞戒笉鍚岀殑left鑿滃崟

聽 浼樺娍锛氶厤缃畝鍗曪紝鐞嗚В鎴愭湰姣旇緝灏?

聽 鍔e娍锛氬浜庣粷澶ф暟绯荤粺鏉ヨ锛屽涓郴缁熸ā鍧楃殑妯″潡涓€鑸兘鏄粺涓€鐨勶紝閰嶇疆澶氫釜decorator鎰忓懗鐫€鍒涘缓涓楗伴〉闈紝杩欎簺瑁呴グ椤甸潰閲屽彲鑳?5%浠ヤ笂鐨勪唬鐮侀兘鏄竴鏍风殑锛屼笉鍚岀偣鍦ㄤ簬include涓嶅悓鐨刲eft.jsp鏂囦欢

2.涓€涓猟ecorator,浣跨敤鍔ㄦ€佸弬鏁版潵鍔ㄦ€佸姞杞藉摢涓猯eft.jps鏂囦欢

聽 瀹炵幇鍘熺悊锛氬綋鍓嶈姹傛墍鍦ㄦā鍧椾綔涓哄弬鏁颁紶閫掔粰sitemesh,sitemesh璇诲彇璇ュ弬鏁帮紝骞跺幓瀵瑰簲妯″潡鍔犺浇鍚勮嚜鐨刲eft.jsp鏂囦欢锛岃繖鏍峰氨瀛樺湪浠ヤ笅鐨勯棶棰?

聽 a)鎵€鍦ㄦā鍧椾俊鎭瓨鏀惧湪鍝噷锛?

聽 聽 閫氬父鐨勫仛娉曟槸鍦ㄥ姩鎬侀〉闈㈢殑<head>鍏冪礌涓坊鍔犱竴涓?lt;meta>鍏冪礌锛宮eta鍏冪礌鍏跺疄鍙互绠€鍗曠殑鐞嗚В鎴愪竴涓猭ey-value鐨勬暟鎹妭鐐癸紝濡傚湪user妯″潡鐨勫垱寤虹敤鎴烽〉闈?user/createUser.jsp閲屾坊鍔?

聽 聽 <meta name="moduleName" content="user"/>锛岃€屽湪system妯″潡鐨勭郴缁熼厤缃〉闈?system/sysConfig.jsp椤甸潰娣诲姞濡備笅 <meta name="moduleName" content="system"/>

聽 b)sitemsh鎬庝箞璇伙紵

聽 聽 瀵逛簬鎵€鏈夌殑jsp椤甸潰锛屾牴鎹甹sp椤甸潰鎵€鍦ㄧ殑妯″潡涓嶅悓锛屼篃瀛樻斁涓轰笉鍚岀殑椤甸潰涓嬶紝杩欓噷鍋氫竴涓粺涓€鐨勫懡鍚嶇害鏉燂紝瀵逛簬鍚勪釜妯″潡鐨勫乏渚ц彍鍗曪紝閮界粺涓€鍛藉悕涓簂eft.jsp,鍏剁洰褰曠粨鏋勫涓?

聽 聽 /user/ left.jsp

聽 聽 /user/createUser.jsp

聽 聽 /system/ left.jsp

聽 聽 /system/sysConfig.jsp

聽 聽 鏈変簡杩欐牱鐨勫懡鍚嶇害鏉熷悗锛屾垜浠氨鍙互鍦╯itemesh鐨勮楗伴〉闈㈠仛鏂囩珷浜?

  1. <%@聽page聽contentType="text/html;聽charset=GBK"%>聽聽
  2. <%@聽taglib聽uri="http://www.opensymphony.com/sitemesh/decorator"聽prefix="decorator"聽%>聽聽
  3. <html>聽聽
  4. 聽聽聽聽聽<head>聽聽
  5. 聽聽聽聽聽聽聽<title><decorator:title聽default="瑁呴グ鍣ㄩ〉闈?.."聽/></title>聽聽
  6. 聽聽聽聽聽聽聽<decorator:head聽/>聽聽
  7. 聽聽聽聽聽</head>聽聽
  8. 聽聽聽聽聽<body>聽聽
  9. 聽聽聽聽聽聽聽<jsp:include聽page="/header.jsp"></jsp:include>聽聽
  10. 聽聽聽聽聽聽聽<span聽style="color:#ff0000;"><decorator:usePage聽id="thePage"聽/>聽</span><!--聽鎶婂綋鍓嶉〉闈㈣祴鍊肩粰thePage杩欎釜鍙橀噺-->聽聽
  11. 聽聽聽聽聽聽聽<jsp:include聽page="/<%=<span聽style="color:#ff0000;">thePage.getProperty("meta.moduleName")</span>%>/left.jsp"></jsp:include>聽聽
  12. 聽聽聽聽聽聽聽<decorator:body聽/>聽聽
  13. 聽聽聽聽聽聽聽<jsp:include聽page="/footer.jsp"></jsp:include>聽聽
  14. 聽聽聽聽聽</body>聽聽
  15. </html>