我的页面跳转不过去
numberAdd.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
<style type="text/css">
input{
margin-bottom:20px;
}
</style>
</head>
<body>
<div style="margin-bottom:20px;">加法计算器</div>
<form action="/Add" method="post">
<input type="text" name="num1"/>加数1:
<br>
<input type="text" name="num2"/>加数2:
<br>
<input type="submit" value="计算"/>
</form>
</body>
</html>
Add.java
package cn.java.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/Add")
public class Add extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//通过转发的形式来跳转页面
int add=Integer.parseInt(request.getParameter("num1"))+Integer.parseInt(request.getParameter("num2"));
// request.setAttribute("result", add);
// request.getRequestDispatcher("/result.jsp").forward(request, response);
//通过PrintWriter来在页面打印输出
PrintWriter out=response.getWriter();
out.println(add);
//通过重定向的方式来跳转页面
// ServletContext sx=request.getServletContext();
//sx.setAttribute("result", add);
// response.sendRedirect("/imooc_servlet1/result.jsp");
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
result.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
加法计算器:
<br>
运算结果为:<%=request.getAttribute("result") %>
<!-- 运算结果为:<%=application.getAttribute("result") %>-->
</body>
</html>
正在回答 回答被采纳积分+1
1、这个path值我们通常称为是项目名称,也就是项目发布的名称;在访问项目时,访问路径是这样的:localhost:8080/项目发布名称/index.jsp 如果没有配置项目发布名称,访问时,就可以这么写:
localhost:8080/index.jsp
由于你的代码中是直接跳转的Add,<form action="/Add" method="post"> 前面没有加项目名称,所以可以将配置的项目发布名称去掉,这样就可以直接跳转过去了;或者在/Add前面加上项目的发布名称。
2、改为/ 后,访问404:此时tomcat还是直接访问的我们发布的项目,默认访问页面上是index.jsp,但是我们的项目如果没有index.jsp 就会出现404;
3、此处就需要区分path和你所说的项目名称了;path指的是发布到服务器上以后的项目名称,而你说的项目名称就是project的名称,两个还有所区别的。
如果解决了你的疑惑,请采纳。祝学习愉快!
- 参与学习 人
- 提交作业 1088 份
- 解答问题 10205 个
如果你有Java语言基础,又想以后从事Java Web开发,那么本路径是你的不二选择!本路径从网页搭建开始入手,通过大量案例来学习Java Web基础。定能助你完成Java Web小白的蜕变!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星