Passing JSP data to Java class and vice versa on button click
在JSP中,我是相当新的,我正在尝试解决如何将在JSP页面中输入的数据传递给Java类,并在单击时将数据返回到JSP页面。
我的index.jsp看起来有点像这样:
1 2 3 4 5 6 | <%@ page import="mypackage.*" %> <% myClass c = new myClass(); c.setString("String"); %> <p> This is a test: <%= c.getString(); %> </p> |
上面的代码将输出"string"。如果我在页面加载时设置该值,就可以毫无问题地访问我的类。经过一些研究,我尝试使用servlet。我修改了表单以在表单操作中添加servlet"testservlet":
1 | <form method="POST" action="testServlet"> |
然后,在testservlet中的dopost()方法中,我添加了以下内容:
1 2 |
但是,很明显,我遗漏了这个流程中的一个关键部分,而且我很可能对这个流程有错误,以及在我按下Submit之后的所有表单都被重定向到testservlet,所以我得到了一个错误,即资源不可用,因为它不是JSP/HTML页面。
所以我的问题是,我怎样才能将数据从JSP传递给Java,反之亦然呢?另外,没有servlet有没有可能做到这一点?学习JSP及其行为(如传递数据)的良好教程/示例有哪些?请帮忙。
经过更多的研究,我现在能够使用jsp:usebean将索引上的数据集传输到细节,但是,正如我在所有我访问过的论坛中所读到的,servlet应该被用来处理这个问题,但是作为一个初学者,这确实让我更加困惑,所以我真的想知道我在这里遗漏了什么。
我已经确保servlet是在web.xml上注册的,并且没有更改其中的任何内容。
更新:我尝试从头开始重新创建项目,并设法使servlet工作。结果发现,doget()方法中缺少了一些内容。但现在我的问题是,有没有一种方法可以在JSP文件中不使用servlet或页面导入来处理表单?我看到了一个不使用servlet或页面导入的示例代码。我确实注意到了标签。
使用JavaBean和吸收器和设置器来实现类成员变量。