我有一個沒有框架的Java應用程序。它由用於業務邏輯的視圖和servlet的jsp文件組成。我必須設置用戶會話是帶有firstName參數的servlet。在jsp文件中,我需要檢查我的firstName參數是否有值。如果設置了firstName參數,我需要在jsp文件中顯示一些html。如果沒有設置,我需要在jsp文件中顯示不同的html。檢查jsp文件中的servlet會話屬性值
Servlet.java:
HttpSession session = request.getSession();
session.setAttribute("firstName", customer.getFristName());
String url = "/index.jsp";
RequestDispatcher dispatcher = getServletContext().getRequestDispatcher(url);
dispatcher.forward(request, response);
的header.jsp:
// Between the <p> tags bellow I need to put some HTML with the following rules
// If firstName exist: Hello ${firstName} <a href="logout.jsp">Log out</a>
// Else: <a href="login.jsp">Login</a> or <a href="register.jsp">Register</a>
<p class="credentials" id="cr"></p>
什麼是做到這一點的最好方法是什麼?
更新:
這裏是一個偉大的教程中,我對JSTL發現,如果有人需要它: http://www.tutorialspoint.com/jsp/jsp_standard_tag_library.htm
謝謝易卜拉欣!這個解決方案乾淨簡單。它完成了我想要的事情。我正在搞jsp EL,它變得非常混亂。 :) – Marta
凌亂?顯然你做錯了什麼。使用JSTL/EL,它就像'
某些內容
其他內容
''。我不確定這是多麼混亂。 – BalusC@BalusC我當然了!我正在EL中尋找一個if-else構造,並且無法使其工作,所以我放棄了這個想法。看你的例子,它會做我想要的。我可能會使用這個而不是將Java代碼放入我的JSP中。我讀過在JSP中使用EL/JSTL比java更好的做法。謝謝你的幫助! – Marta