popoxf 2023-09-24 14:43 采纳率: 33.3%
浏览 7

关于#前端#的问题:为什么使用Servlet会出现这种现象,html代码明显指向req3,但form表单提交后却指向req2,且method也没有变化成get(语言-java)

为什么使用Servlet会出现这种现象,html代码明显指向req3,但form表单提交后却指向req2,且method也没有变化成get,求解答

img


img


img

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-09-24 16:37
    关注

    【相关推荐】



    • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/7475077
    • 除此之外, 这篇博客: servlet从客户端向服务端发送请求调用功能的几种方式中的 优化:接下来通过反射 执行对应方法, 减少判断method的if else语句 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
      public class ServletDemo02 extends HttpServlet {
      	private static final long serialVersionUID = 1L;
      	public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
      		doGet(request, response);
      	}
      	
      	public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
      		//获取客户端提交到服务端的method对应的值
      		String md=request.getParameter("method");
      		//定义变量,存放功能执行完毕之后要转发的路径
      		String path=null;
      		
              //---------------------------------------------------------------------------------------------
              //通过反射 执行对应方法, 减少判断method的if else语句
                //获取到当前字节码对象(ServletDemo02.class在内存中对象)
      		Class clazz = this.getClass();
      		try {
      			//获取clazz上名称为md方法
      			Method method=clazz.getMethod(md, HttpServletRequest.class,HttpServletResponse.class);
      			if(null!=method){
      				//调用找到的方法
      				path=(String)method.invoke(this, request,response);
      			}
      			if(null!=path){
      				//服务端的转发
      				request.getRequestDispatcher(path).forward(request, response);
      			}
      		} catch (Exception e) {
      			e.printStackTrace();
      		} 
      		
      		//----------------------------------------------------------------------------------------------------------
      		
      	}
      
      	public String addStu(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
      		System.out.println("添加学生");
      		return "/test.html";
      		
      	}
      	public String delStu(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
      		System.out.println("删除学生");
      		return "/test.html";
      		
      	}
      	public String checkStu(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
      		System.out.println("检查学生");
      		response.getWriter().println("DDDDDD");
      		return null;
      	}
      }
      

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 9月24日

悬赏问题

  • ¥15 单纯型python实现编译报错
  • ¥15 c++2013读写oracle
  • ¥15 c++ gmssl sm2验签demo
  • ¥15 关于模的完全剩余系(关键词-数学方法)
  • ¥15 有没有人懂这个博图程序怎么写,还要跟SFB连接,真的不会,求帮助
  • ¥15 PVE8.2.7无法成功使用a5000的vGPU,什么原因
  • ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
  • ¥15 安装quartus II18.1时弹出此error,怎么解决?
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音