Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JSP中如何使用.do文件在Struts框架之外的Java和前端web表单之间传递数据?_Java_Jsp_Servlets - Fatal编程技术网

JSP中如何使用.do文件在Struts框架之外的Java和前端web表单之间传递数据?

JSP中如何使用.do文件在Struts框架之外的Java和前端web表单之间传递数据?,java,jsp,servlets,Java,Jsp,Servlets,我将JSP与ApacheTomcat服务器一起用于一个web项目 我不理解.do文件或它们是如何使用的,但在回答中描述了如何做我需要做的事情 我的理解是,thusfar: Struts框架使用.do文件,因此许多人认为这些文件是相互关联的 .do文件在中有描述,因此并不特定于Struts .do文件(我感兴趣)的至少一个主要用例是在HTML/JS表单和Java/JSP之间轻松传递数据 如果我创建了一个表单,如我链接的第一个答案中的表单: <form action="MyServlet.

我将JSP与ApacheTomcat服务器一起用于一个web项目

我不理解
.do
文件或它们是如何使用的,但在回答中描述了如何做我需要做的事情

我的理解是,thusfar:

  • Struts框架使用
    .do
    文件,因此许多人认为这些文件是相互关联的
  • .do
    文件在中有描述,因此并不特定于Struts
  • .do
    文件(我感兴趣)的至少一个主要用例是在HTML/JS表单和Java/JSP之间轻松传递数据
  • 如果我创建了一个表单,如我链接的第一个答案中的表单:

      <form action="MyServlet.do" method="post">
          <input type="text" name="nameThree" value="Enter a Name" onClick="if(this.value == 'Enter a Name'){this.value = '';}" /> 
          <input type="submit">
      </form> 
    
    
    
    它将抛出404错误,除非我创建它提到的
    .do
    文件。创建了
    .do
    文件后,代码将运行,但由于缺少某个片段,代码似乎没有执行任何操作

    我不确定
    .do
    文件是否应该为空,或者我是否应该将代码放入其中,等等


    因此,我的问题是:在Struts框架的上下文之外,JSP中如何使用.do文件在Java和前端web表单之间传递数据?

    我意识到这可能有点难以解释,所以我将尽我所能

    “.do”扩展(在URL请求中)最常见于基于struts 1的web应用程序中。这就是说,它的工作方式是将webapp配置为使用.do扩展将http请求路由到StrutServlet(通常为web.xml)。struts就是这样做的(将http请求映射到表单、标识post和get请求、转发到动作类等)

    在非struts应用程序中,您的http请求需要路由到要服务的资源。您可以使用servlet来实现这一点。或者,您可以只返回静态文件(如果您编写自己的file.do),但Tomcat不会将该文件扩展名识别为需要翻译和编译的JSP(因此Tomcat为您提供了404)

    您可能仍然需要配置服务器(tomcat)来服务HTML页面。JSP是可以在服务器上创建动态HTML的众多工具之一。你可以做很多事情(在今天的标准中考虑不良行为,比如制作DB连接,拨打休息电话等)。最后,您可以在JSP中编写Java

    如果你正在构建一个简单的webapp,我建议你使用一个不同的更简单的框架,比如springboot,让它更简单。如果您确实想使用JSP,那么请确保您的http请求总是获取.JSP文件。如果需要特殊的扩展,则需要将它们映射到servlet,并在web.xml中编写/配置它


    希望这有帮助

    没有规则可以绑定.do或任何特定URL与任何框架。这只是一个选择。您可以自由使用任何扩展,如.action等。。。与其考虑.do文件,不如看看MVC流是如何工作的。