今天在学习javaweb的sevrlet时提交表单后直接出现404,网上解决方案都没有很好的解决,有没有行家能给看一下?
name="AddSeverlet" urlParrterns="/add" 试试
你在浏览器打开的URL不正确试试
http://127.0.0.1:8080/test01.html
你的后端服务路径不对造成的。
https://www.cnblogs.com/weibanggang/p/9464307.html
package com.atqh.Servlet.huishouzhanServlet;
import com.atqh.been.MingPian;
import com.atqh.dao.IDeldao;
import com.atqh.dao.impl.IDelmpl;
import com.google.gson.Gson;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;
public class GetDel extends HttpServlet {
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding("utf-8");
resp.setCharacterEncoding("UTF-8");
resp.setContentType("text/html;charset=UTF-8");
IDeldao iDeldao = new IDelmpl();
PrintWriter writer = resp.getWriter();
String username = (String) req.getSession().getAttribute("username");
List<MingPian> del = iDeldao.getdel(username);
// System.out.println("!!!!!!!!!!!!!!!!!d调用了!!");
if (del.size() != 0) {
// req.setAttribute("del", del);
req.setCharacterEncoding("utf-8");
Gson gson = new Gson();
String data = gson.toJson(del);
System.out.println("我是string!!!!!" + data);
writer.write(data);
}
}
}
项目在gitee,github上已经完全开源,欢迎各路大神批评指正
首页http://123.57.64.216:8080/mingpianSystem/
另外 ,项目已部署到服务器,欢迎参观指正!!!
撒花完结!!!
根据您的描述,您在学习JavaWeb的Servlet时,提交表单后遇到了404错误。404错误通常表示无法找到请求的资源。以下是一些可能导致此问题的常见原因和解决方案:
确保URL路径正确:请确保表单提交的URL路径与Servlet的映射路径匹配。您可以在Servlet代码的注解(如@WebServlet)中查看映射路径。
检查Servlet的部署:确保您的Servlet已正确部署到您正在使用的Servlet容器(例如Tomcat)中。您可以检查WEB-INF目录下的web.xml文件,以确保您的Servlet已正确声明。
检查表单提交的方法:请确保表单提交使用的HTTP方法(POST或GET)与Servlet中的doPost或doGet方法匹配。如果您的Servlet只支持POST请求,那么请确保表单的method属性设置为"POST"。
检查表单字段名称:请确保表单字段的名称与Servlet代码中的getParameter方法中的名称匹配。getParameter方法用于获取表单中的参数值。
如果您仍然无法解决问题,您可以提供更多的细节,例如具体的代码和错误消息,以便更好地理解和解决您的问题。
你代码里面使用了两种路径配置方式,第一种是@WebServlet注解的方式进行映射,第二种是你又在web..xml配置文件中使用servlet-mappings进行了映射,你只要使用其中一种方式就可以,不需要两种都使用。