Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 通过servlet进入登录页面后,如何将用户名值带入欢迎页面?_Java_Html_Servlets - Fatal编程技术网

Java 通过servlet进入登录页面后,如何将用户名值带入欢迎页面?

Java 通过servlet进入登录页面后,如何将用户名值带入欢迎页面?,java,html,servlets,Java,Html,Servlets,以下是登录页面: index.html 帐户登录 下面是检查用户名和密码是否匹配的servlet。用户名和密码是硬编码的。若匹配,用户将被导航到欢迎页面 Login.java import java.io.*; 导入javax.servlet.*; 导入javax.servlet.http.*; 导入javax.servlet.annotation.WebServlet; @WebServlet(“/servlet1”) 公共类登录扩展HttpServlet{ public void d

以下是登录页面:

index.html


帐户登录


下面是检查用户名和密码是否匹配的servlet。用户名和密码是硬编码的。若匹配,用户将被导航到欢迎页面

Login.java

import java.io.*;
导入javax.servlet.*;
导入javax.servlet.http.*;
导入javax.servlet.annotation.WebServlet;
@WebServlet(“/servlet1”)
公共类登录扩展HttpServlet{
public void doPost(HttpServletRequest请求、HttpServletResponse响应)
抛出ServletException,IOException{
response.setContentType(“text/html”);
PrintWriter out=response.getWriter();
字符串n=request.getParameter(“用户名”);
字符串p=request.getParameter(“userPass”);
字符串[][]arr=新字符串[4][4];
arr[0][0]=“ABC”;
arr[0][1]=“Password123”;
arr[1][0]=“XYZ”;
arr[1][1]=“servlet”;
arr[2][0]=“PQR”;
arr[2][1]=“了望123”;
arr[3][0]=“TUV”;
arr[3][1]=“Hello123”;
布尔标志=假;
对于(int i=0;i
我必须通过html获取欢迎页面的用户名值。 下面是为欢迎页面调用的servlet。 我需要一个servlet吗

WelcomeServlet.java

@WebServlet(“/servlet2”)
公共类WelcomeServlet扩展了HttpServlet{
public void doPost(HttpServletRequest请求、HttpServletResponse响应)
抛出ServletException,IOException{
response.setContentType(“text/html”);
PrintWriter out=response.getWriter();
字符串n=request.getParameter(“用户名”);
打印输出(“欢迎”+n);
}  
} 

您可以使用&>获取
用户名
。如下图所示:

       if(n.equals(arr[i][0]))
            {
                if(p.equals(arr[i][1]))
                {
                      //get username if password and username matched
                   String username1=a[i][0];
                   //set username1 in request
                    request.setAttribute("username", username1); 
                    RequestDispatcher rd=request.getRequestDispatcher("/servlet2");  
                    rd.forward(request, response); 
                    flag =true;
                }
            }
public void doPost(HttpServletRequest request, HttpServletResponse response)  
            throws ServletException, IOException {  

        response.setContentType("text/html");  
        PrintWriter out = response.getWriter();  
           //getting value got from Login servlet
        String n=(String)request.getAttribute("username");  
        out.print("Welcome "+n);  

        }  
然后在您的
WelcomeServlet
中执行以下操作:

       if(n.equals(arr[i][0]))
            {
                if(p.equals(arr[i][1]))
                {
                      //get username if password and username matched
                   String username1=a[i][0];
                   //set username1 in request
                    request.setAttribute("username", username1); 
                    RequestDispatcher rd=request.getRequestDispatcher("/servlet2");  
                    rd.forward(request, response); 
                    flag =true;
                }
            }
public void doPost(HttpServletRequest request, HttpServletResponse response)  
            throws ServletException, IOException {  

        response.setContentType("text/html");  
        PrintWriter out = response.getWriter();  
           //getting value got from Login servlet
        String n=(String)request.getAttribute("username");  
        out.print("Welcome "+n);  

        }  

使用setAttribute和getAttribute