Çerçeve java uygulamam yok. İş mantığı için görünüm ve servletler için jsp dosyalarından oluşur. Kullanıcı oturumu ayarlamak için bir firstName parametresi olan sunucu uygulamasıdır. Jsp dosyasında, firstName parametresinin bir değeri olup olmadığını kontrol etmem gerekiyor. FirstName parametresi ayarlanmışsa, jsp dosyasında bir miktar html görüntülemem gerekir. Ayarlanmamışsa, jsp dosyasına farklı html göstermem gerekir.jsp dosyasındaki servlet oturum özniteliği değerini denetleme
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>
Ne Bunu yapmanın en iyi yolu olurdu?
Güncelleme: İşte
Ben JSTL üzerinde bulunan büyük öğretici olduğunu durumda herkes buna ihtiyacı: HttpSession session = request.getSession(true);
session.setAttribute("firstName", customer.getFristName())
response.sendRedirect("index.jsp");
aşağıdaki gibi yazabilirsiniz servlet'dir http://www.tutorialspoint.com/jsp/jsp_standard_tag_library.htm
için tavsiye ederiz. Bu çözüm temiz ve basittir. Tam olarak istediğim şeyi yaptı. Jsp EL ile uğraşıyordum ve gerçekten dağınıktı. :) – Marta
Dağınık mı? Görünüşe göre yanlış bir şey yaptın. JSTL/EL sayesinde kadar basit '
bazı içerik
diğer içerik
'. Nasıl daha dağınık olduğundan emin değilim. – BalusC@BalusC Elbette yaptım! EL'de bir if-else yapısı arıyordum ve işe yaramazdım, bu yüzden bu fikri terk ettim. Örneklerine baktığımda, istediğimi de yapardı. JSP'ye java kodu koymak yerine bunu muhtemelen kullanacağım. JSP'lerinizdeki java'dan EL/JSTL kullanmanın daha iyi bir uygulama olduğunu okudum. Yardım ettiğin için teşekkür ederim! – Marta