![](/img/trans.png)
[英]session lost while redirecting the jsp page using Java servlet filter
[英]Using jsp page instead of java servlet
我已經使用HTML頁面和Java Servlet類創建了登錄頁面。 但是我想知道是否有可能使用JSP而不是Java文件? 因此必須在Java類中將此代碼使用到JSP頁面中,並且仍然具有相同的功能嗎?
<form action="Lognn" method="post">
<input type="text" name="name"/>
<input type="text"name="pass"/>
Java類
Public class Login extends HttpServlet {
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
try (PrintWriter out = response.getWriter()) {
String name = request.getParameter("name");
String pass = request.getParameter("pass");
MyDb1 db = new MyDb1();
Connection con = db.getCon();
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("select uid,name,pass from register where email = '"+name+"' and pass = '"+pass+"'");
while ((rs.next())) {
String uid = rs.getString("uid");
//out.println("User id"+uid);
HttpSession session=request.getSession();
session.setAttribute("name",uid);
response.sendRedirect("http://localhost:8080/Final/userprofile.jsp");
}
} catch (SQLException ex) {
Logger.getLogger(Login.class.getName()).log(Level.SEVERE, null, ex);
}
通常,每個JSP都會翻譯並編譯為一個servlet,並且您可以使用servlet進行很多事情,而您可以使用JSP進行。
您可以將表單action =“ Lognn” method =“ post”更改為form action =“ Lognn.jsp” method =“ post”,然后
在Lognn.jsp中,您可以從html中讀取輸入參數,例如<%= request.getParameter(“ name”)%>,然后
在Lognn.jsp中,您可以直接連接到數據庫,也可以使用EJB
最后,您可以從同一JSP提供html輸出。
它可以在沒有servlet的情況下正常運行,但是在CATALINA_HOME / WORk目錄中,將在內部從您的JSP創建和編譯servlet。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.