本人为小白,刚刚接触,以下为本人写的代码,恳请各位大佬不吝赐教  
  FirstServlet.javapackage com.demo;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.WebServlet;@WebServlet(name="FirstServlet",urlPatterns= {"/input.do"})
public class FirstServlet extends HttpServlet{
    public void doPost(HttpServletRequest request,HttpServletResponse response)
        throws ServletException,IOException{
         String name = request.getParameter("name");
         String sno = request.getParameter("sno");
         response.setContentType("text/html;charset=ISO-8859-1");
         request.setAttribute("name",name);
         request.setAttribute("sno",sno);
         RequestDispatcher rd = request.getRequestDispatcher("/SecondServlet");
         rd.forward(request, response);
    
    }
}SecondServlet.javapackage com.demo;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.WebServlet;@WebServlet(name="SecondServlet",urlPatterns= {"/FirstServlet.do"})
public class SecondServlet extends HttpServlet{
    public void doPost(HttpServletRequest request,HttpServletResponse response)
        throws ServletException,IOException{
         response.setContentType("text/html;charset=ISO-8859-1");
String Sno = request.getAttribute("sno").toString();
         String Name = request.getAttribute("name").toString();  
         PrintWriter out = response.getWriter();
         out.println("<html><body>");
         out.println("学号:"+Sno+"<br>");
         out.println("姓名:"+Name+"<br>");
         out.println("<a href = 'http://localhost:8080/Book-57-17/input.jsp'>返回输入界面</a>");
         out.println("</body></html>");
         
    }
}

解决方案 »

  1.   

    代码用代码块包围啊。这样难看死了。这代码做什么用的,为什么要用两个servlet
      

  2.   

    你的代码已经实现你想要的效果了
    你提出的问题(一个servlet获取到参数后,需要另一个servlet能读出来),这种需求有两种解决方式:
    1.请求转发;就是你代码中所用的方式,这种方式虽然请求从一个servlet到了另一个servlet,但还是同一个请求,所以参数直接从request中拿就可以;
    2.请求重定向;这种方式是客户端重新发起了一次请求,如果不想前面请求的参数丢失,需要将参数写在url里,转发给目标servlet,然后在目标servlet中,从request对象里取出参数即可。
      

  3.   

    想要赐教什么?你这个例子自己跑起来了吗?有问题吗?
    第一个请求可以在浏览器地址拼接参数回车,也可以做个页面,第二个展示可以用servlet转到jsp,用jsp展示。如果刚开始学servlet,还没学jsp,这样就可以。