从表单获取信息并将其粘贴到jsp

时间:2013-07-24 11:22:18

标签: java jsp text

我有一个带有文字字段的jsp。我想打印出我插入文本字段的文本,但不知道该怎么做。 JSP页面:

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Return the name</title>
    </head>
    <body>
        <h1>Welcome</h1>
        Insert your text here:<br>
        <form name="txtForm" action="Main.java" method="post">
            <input type="text" name="txt">
            <input type="submit" value="Send">
        </form>
    </body>
</html>

这是处理JSP的class(Main.java)

public class Main extends HttpServlet {

    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

        String text = request.getParameter("txt");
        Date d = new Date();
        System.out.println("The name you enter is:" + text + "at the time : " + d);
    }
}

我想要的是从jsp中获取信息,然后将其打印在jsp上。如何才能做到这一点?我尝试使用<%@ import ... >并且不能使它工作。 :(
谢谢。

2 个答案:

答案 0 :(得分:1)

您编写的表单中的Action属性值是错误的。操作值应与Web.xml中的URL模式匹配。例如,在JSP中:

<form name="txtForm" action="NewServlet" method="post">

在Web.xml中:

<servlet-mapping>
    <servlet-name>SimpleServlet</servlet-name>
    <url-pattern>/NewServlet</url-pattern>
</servlet-mapping> 
<servlet>
    <servlet-name>SimpleServlet</servlet-name>
    <servlet-class>complete Path of Servlet </servlet-class>
</servlet>

在上面的表单中,action属性值“NewServlet”将映射到web.xml中的“”。要将信息写回JSP,可以在servlet中使用PrintWriter Object。

String text = request.getParameter("txt");
Date d = new Date();
PrintWriter out = response.getWriter();
out.println("The name you enter is:" + text + "at the time : " + d);

答案 1 :(得分:0)

首先,此form定义可能不起作用:

<form name="txtForm" action="Main.java" method="post">

action属性中,您需要指定一个网址,例如form.do等... 然后将Servlet Main.java映射到 web.xml 中的此特定URL。

尝试使用PrintStream将其打印到回复中。

response.getWriter.println("The name you enter is:" + text + "at the time : " + d);

执行此操作时,响应将被发送回浏览器。

理想情况下,您应该使用 JSP 进行查看。

您可以将请求发送到 JSP ,然后使用EL ${param.parameterName}打印请求参数。

  

我想从jsp中通过我的课程获取信息,然后将其打印回jsp

但这将是一个有点长的练习。您需要从Servlet类(即request)将Main.java发送到设置request属性的单独JSP。