我使用Eclipse EE设置了一个动态Web项目,并添加了一个jsp页面。
当项目在服务器上运行时,页面被设置为欢迎页面,并显示一个输入框和一个提交按钮。
我的问题是如何在按钮点击时将输入到输入框的值传递给我的HelloServlet类?
有没有人对我如何做到这一点有任何建议?
hello jsp页面布局如下:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Fibonacci Sequence</title>
</head>
<body>
<form action="HelloServlet">
<b>Fibonacci Sequence Length </b> <br>
<input type="text" name="fibNum"size="20px" style="font-size:30pt;height:60px" >
</form>
</body>
</html>
这是设置的servlet类,它扩展了HttpServlet:
public class HelloServlet extends HttpServlet {
int fibNum;
//parse input from hello.jsp input box
//and assign to fibNum variable
}
答案 0 :(得分:1)
将html表单中的http方法定义为'GET' or 'POST'。我会把它设置为&#39; POST&#39;。然后在servlet类中实现doPost() method。 方法签名如下所示;
doPost(HttpServletRequest req, HttpServletResponse resp)
您可以使用
等方法从req
对象(ServletRequest class)中检索参数
getParameter(java.lang.String name)
getParameterMap()
阅读链接的javadoc以查看可用于检索参数的方法。
在您的情况下,您可以提取参数,如;
String fibNum = req.getParameter("fibNum");
如果需要,可以使用Integer.valueOf(fibNum)
转换为整数。