的index.html
<form action="add.jsp">
first number-<input type="text" name="n1"><br>
second number-<input type="text" name="n2"><br>
<input type="submit" value="SUBMIT"><br>
result-<input type="text">
</form>
add.jsp
<body>
<%
int a,b,c;
a=Integer.parseInt(request.getParameter("n1"));
b=Integer.parseInt(request.getParameter("n2"));
c=a+b;
%>
</body>
如何将c
的值放在index.html
页面的“结果”文本字段中?
答案 0 :(得分:0)
首先,我建议不要在jsp中使用scriptlets
。 Jsp在视图层中用于提供已处理的结果,将所有逻辑放在servlet
而不是此方法中。
更简单的方法:
将index.jsp的表单标记更改为:
<form action="${pageContext.request.contextPath}/demoCalculator">
现在创建一个Servlet :(您需要在web.xml文件中使用url-pattern“demoCalculator”映射此servlet)
import javax.servlet.http.*;
import javax.servlet.*;
public class DemoServlet extends HttpServlet{
public void doGet(HttpServletRequest req,HttpServletResponse res)
throws ServletException
{
int a=0,b=0,c=0;
a=Integer.parseInt(request.getParameter("n1"));
b=Integer.parseInt(request.getParameter("n2"));
c=a+b;
request.setAttribute("result", c);
request.getRequestDispatcher("/index.jsp").forward(request, response);
}
}
使用url-pattern“demoCalculator”
在web.xml
中映射servlet
<servlet-mapping>
<servlet-name>DemoServlet</servlet-name>
<url-pattern>/demoCalculator/</url-pattern>
</servlet-mapping>
使用jsp页面作为index.jsp并保持结果如下:
result-<input type="text" value='<c:out value="${requestScope.result}"/>' >