我正在嘗試使用會話進行操作。我有一個與MySQL數據庫很好地結合的登錄表單。現在我想要設置一個Session,在其中顯示「Hello B85417」(我的用戶名)。每次我登錄時,我都會收到一條消息:當我嘗試撥打用戶名時爲空
您輸入正確的信息Hellonull。
有人看到這裏有什麼問題嗎?
<form action="LoginServlet">
Please enter your username
<input type="text" name="un"/><br>
Please enter your password
<input type="text" name="pw"/>
<input type="submit" value="submit">
</form>
從你來到這個頁面中的登錄表單:
userLogged.jsp:
<body>
Hello <%= session.getAttribute("currentSessionUser") %>
該servlet誰配置從的Mads index.jsp的問候登錄看起來像這樣:
package ExamplePackage;
import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class LoginServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, java.io.IOException {
try {
UserBean user = new UserBean();
user.setUserName(request.getParameter("un"));
user.setPassword(request.getParameter("pw"));
user = UserDAO.login(user);
if (user.isValid()) {
HttpSession session = request.getSession(true);
session.setAttribute("currentSessionUser",user);
response.sendRedirect("userLogged.jsp"); //logged-in page
RequestDispatcher rd = request.getRequestDispatcher("PersonalSite.jsp");
rd.include(request,response);
}
else
response.sendRedirect("invalidLogin.jsp"); //error page
}
catch (Throwable theException) {
System.out.println(theException);
}
}
}
你好。非常感謝您的回答。當我把在:
\t \t <%@頁面進口= 「ExamplePackage.LoginServlet」 %> \t你好<%= session.getAttribute( 「currentSessionUser」)%> 在個人網站 我在我的瀏覽器中獲取: 「Hello [email protected]」 你知道我爲什麼這麼做嗎? – McDuck4以及userLogged.jsp – McDuck4
注意:我只是使用新信息編輯了servlet和JSP。但我仍然收到消息「Hello ExamplePackage」 – McDuck4