JavaWebのサーブレットプログラミング例2
3611 ワード
サーブレットを使用すると、ユーザーが入力した情報を読み取り、ページをジャンプして表示できます.コードは次のとおりです.
LoginServiceコード:
success.jsコードは次のとおりです.
error.jspコード:
xmlファイルに次のコードを追加します.
responseオブジェクトを用いたリクエストリダイレクトは,ページのジャンプに成功したが入力された情報を表示することはできないが,リクエスト転送を用いてジャンプに成功し,情報を出力することができる.リクエスト転送は同じコンポーネント間でのみジャンプできますが、リクエストリダイレクトは異なるコンポーネント間でジャンプできます.
LoginServiceコード:
package com.djx.sevlet;
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 com.sun.net.httpserver.HttpServer;
import com.sun.net.httpserver.HttpsServer;
import sun.security.krb5.internal.SeqNumber;
public class LoginServlet extends HttpServlet{
/**
*
*/
private static final long serialVersionUID = 1L;
/* @Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
String username=req.getParameter("uname");
String upassword=req.getParameter("upwd");
System.out.println(" :"+username);
System.out.println(" :"+upassword);
//super.service(req, resp);
}*/
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println(" doGet ");
doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println(" doPost ");
String username=req.getParameter("uname");
String upassword=req.getParameter("upwd");
System.out.println(" :"+username);
System.out.println(" :"+upassword);
String forward=null;
if (username=="djx" && upassword=="123") {
//
// resp.sendRedirect(req.getContextPath()+"/15/success.jsp");
forward="/15/success.jsp";
RequestDispatcher rd=req.getRequestDispatcher(forward);
rd.forward(req, resp);
}else{
//resp.sendRedirect(req.getContextPath()+"/15/error.jsp");
forward="/15/success.jsp";
RequestDispatcher rd=req.getRequestDispatcher(forward);
rd.forward(req, resp);
}
//super.doPost(req, resp);
}
}
login.jspコードは以下の通りです.
Insert title here
success.jsコードは次のとおりです.
。
:
:
:
ログインページに る
error.jspコード:
。
:
:
:
ログインページに る
xmlファイルに次のコードを追加します.
LoginServlet
com.djx.sevlet.LoginServlet
LoginServlet
/LoginServlet
responseオブジェクトを用いたリクエストリダイレクトは,ページのジャンプに成功したが入力された情報を表示することはできないが,リクエスト転送を用いてジャンプに成功し,情報を出力することができる.リクエスト転送は同じコンポーネント間でのみジャンプできますが、リクエストリダイレクトは異なるコンポーネント間でジャンプできます.