如何避免在JSP頁面中使用scriptlet?我被告知在我的JSP頁面中使用scriptlet(<%= ...%>)并不是一個好主意。有沒有更多java / jsp經(jīng)驗的人可以給我一些關(guān)于如何更改此代碼的指示,以便更多“最佳實踐”,無論可能是什么?這個JSP實際上是我的sitemesh主裝飾頁面。基本上我的網(wǎng)頁設(shè)計有一個標(biāo)簽條和一個子菜單,我希望以某種方式突出顯示當(dāng)前標(biāo)簽,并通過查看當(dāng)前請求URI顯示正確的子菜單。<%@ taglib uri="http://www.opensymphony.com/sitemesh/decorator" prefix="decorator" %><html><head>
<title>My Events - <decorator:title /></title>
<link href="<%= request.getContextPath() %>/assets/styles.css" rel="stylesheet" type="text/css" /></head><body><div class="tabs">
<a
<%= request.getRequestURI().contains("/events/") ? "class='selected'" : "" %>
href='<%= request.getContextPath() %>/events/Listing.action'>Events</a>
<a
<%= request.getRequestURI().contains("/people/") ? "class='selected'" : "" %>
href='<%= request.getContextPath() %>/people/Listing.action'>People</a></div><div class="submenu">
<% if(request.getRequestURI().contains("/events/")) { %>
<a href="Listing.action">List of Events</a>
|<a href="New.action">New Event</a>
<% } %>
<% if(request.getRequestURI().contains("/people/")) { %>
<a href="Listing.action">List of People</a>
|<a href="New.action">New Person</a>
<% } %>
</div><div class="body">
<decorator:body /></div></body></html>謝謝大家
3 回答

萬千封印
TA貢獻(xiàn)1891條經(jīng)驗 獲得超3個贊
Scriptlet不是世界上最糟糕的事情。一個重要的考慮因素是考慮誰將維護(hù)代碼。如果它的Web設(shè)計人員沒有太多的Java經(jīng)驗,那么最好使用標(biāo)記庫。但是,如果Java開發(fā)人員正在進(jìn)行維護(hù),那么使用scriptlet可能會更容易。
如果您最終使用標(biāo)記庫和JSTL,那么您希望維護(hù)者也可以學(xué)習(xí)標(biāo)記庫并了解JSTL。一些開發(fā)人員可以很好地使用它,因為它是他們想要或已經(jīng)擁有的技能,但是對于一些只需要每隔幾個月左右處理一次JSP的開發(fā)人員來說,使用寫得很好的清晰編寫的scriptlet就不那么痛苦了。熟悉的Java。
添加回答
舉報
0/150
提交
取消