空指针异常
来源:2-6 自由编程
Ranron
2019-11-25 15:28:39
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <form action="/servletAdvanced/Sum"> <input type="text" name="sum" placeholder="请输入100以内的数字"> <input type="submit" value="提交"> </form> </body> </html>
package servletAdvanced;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class Sum
*/
@WebServlet("/Sum")
public class Sum extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public Sum() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String integer=request.getParameter("sum");
System.out.println("用户输入的值:"+integer);
request.setAttribute("sum",integer);
request.getRequestDispatcher("/DisplaySum").forward(request, response);
}
}
package servletAdvanced;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class DisplaySum
*/
@WebServlet("/DisplaySum")
public class DisplaySum extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public DisplaySum() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String sum1=(String)request.getAttribute("sum");
int sum2=Integer.valueOf(sum1);
int a=0;
for(int i=0;i<=sum2;i++) {
a=a+i;
}
response.getWriter().println("累加和是:"+a);
}
}
在Sum里的测试语句就显示为null,原因是什么呢
1回答
同学你好!
老师在本地测试你的代码,没有任何问题呢:


建议同学clean一下项目,重新启动测试一下

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
相似问题