JSP:servlet实验-使用servlet进行转发操作

本文详细指导如何在Eclipse中创建DynamicWebProject项目,实现用户通过inputName.jsp提交姓名到PostMan Servlet,并转发至showName.jsp。涉及web.xml配置、JSP表单、servlet的编码设置和转发逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

实验要求:

用户在inputName. JSP页面输人姓名提交给servlet,servlet 将用户的请求再转发给
showName. jsp页面。
JSP页面具体要求
inputName,jsp页面提供一个表单,用户使用该表单中的文本框输人姓名提交给名字
为postman的servlet。
编写一个Serle类PostMan. 该类创建的servle 可以将用户的请求转发到
showNome. isp页面。PosMan包名是myreve cotrol PostMan. java 保存到Wb量
务目朵的\WEB INlsesretotro子目录中。
格式编译源文件:
然后打开MS D0命令行窗口,使用MS D0S命令进人包名的父目录dss按如下,
javec yservlet\control\PostMan. java

——————————————————————————————————————

首先打开Eclipse,创建Dynamic Web project项目

在Java Resources下src下创立包,包里放java文件(servlet)

WebContent下创建jsp文件

web.xml

<?xml version="1.0" encoding="UTF-8"?>

-<web-app>


-<servlet>

<servlet-name>postman</servlet-name>

<servlet-class>myservlet.control.PostMan</servlet-class>

</servlet>


-<servlet-mapping>

<servlet-name>postman</servlet-name>

<url-pattern>/postman</url-pattern>

</servlet-mapping>

</web-app>

inputName.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

<html>
<body bgcolor=pink>
<font size=4>
<form action="postman" method=post>
输入名字:<input type=text name="name">

<br><input type=submit value="提交">
</form>
</font>
</body>
</html>

showName.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

<html>
<body>

<font size=4>
<%
request.setCharacterEncoding("utf-8");
String name = request.getParameter("name");
%>

用户输入的是:<%=name%>
</font>
</body>
</html>

PostMan.java

package myservlet.control;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;


public class PostMan extends HttpServlet{
public void init(ServletConfig config) throws ServletException{
	super.init(config);
}

public void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{
	request.setCharacterEncoding("UTF-8");
	String name = request.getParameter("name");
	RequestDispatcher dispatcher = request.getRequestDispatcher("showName.jsp");
	if(name!=null&&name.length()>=1){
		dispatcher.forward(request, response);
	}	
}

public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{
doPost(request,response);
}


}

 运行结果:

 

showName下需在代码段里增加request.setCharacterEncoding("utf-8");防止request获取的参数乱码

inputName下form中action属性为postman,为servlet名称,可对照web.xml

PostMan.java下需要注意几个导包 继承HttpServlet类,创建一个初始化方法

其中

RequestDispatcher dispatcher = request.getRequestDispatcher("showName.jsp");

dispatcher.forward(request, response);

是转发的方法

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

九洲带鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值