java - 将 jsp 页面链接到 java 类

标签 java jsp

我已经用 jsp 编写了一个 hello world 程序,现在我尝试通过 JSP 处理表单。

我的 jsp 表单(GetName.jsp)如下所示

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>


<FORM METHOD=POST ACTION="SaveName.jsp">
Name <INPUT TYPE=TEXT NAME=username SIZE=20><BR>
Email <INPUT TYPE=TEXT NAME=email SIZE=20><BR>
Age <INPUT TYPE=TEXT NAME=age SIZE=4>
<P><INPUT TYPE=SUBMIT>
</FORM>
</BODY>
</HTML>
    </body>
</html>

类似地,SaveName.jsp 看起来像这样

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>JSP Page</title>
    </head>
    <body>

        <jsp:useBean id="userData" class="javabeans.UserData" scope="session"/>
<jsp:setProperty name="userData" property="*"/> 


</BODY>
</HTML>
    </body>
</html>

在同一个项目中名为 javabeans 的包中,名为 UserData 的类如下所示。

package javabeans;

public class UserData {

    String username;
    String email;
    int age;

    public void setUsername( String value )
    {
        username = value;
    }

    public void setEmail( String value )
    {
        email = value;
    }

    public void setAge( int value )
    {
        age = value;
    }

    public String getUsername() { return username; }

    public String getEmail() { return email; }

    public int getAge() { return age; }

}

现在,当运行 GetName.jsp 时,我收到以下错误

D:\javaworkspace\Netbeans7-2\HelloWeb\build\generated\src\org\apache\jsp\SaveName_jsp.java:56: cannot find symbol
symbol  : class UserData
location: class org.apache.jsp.SaveName_jsp
      UserData user = null;
      ^
D:\javaworkspace\Netbeans7-2\HelloWeb\build\generated\src\org\apache\jsp\SaveName_jsp.java:58: cannot find symbol
symbol  : class UserData
location: class org.apache.jsp.SaveName_jsp
        user = (UserData) _jspx_page_context.getAttribute("user", PageContext.SESSION_SCOPE);
D:\javaworkspace\Netbeans7-2\HelloWeb\build\generated\src\org\apache\jsp\SaveName_jsp.java:60: cannot find symbol
symbol  : class UserData
location: class org.apache.jsp.SaveName_jsp
          user = new UserData();
3 errors
D:\javaworkspace\Netbeans7-2\HelloWeb\nbproject\build-impl.xml:930: The following error occurred while executing this line:
D:\javaworkspace\Netbeans7-2\HelloWeb\nbproject\build-impl.xml:284: Compile failed; see the compiler error output for details.
BUILD FAILED (total time: 2 seconds)

最佳答案

您需要在 SaveName.jsp 中导入 UserData

将此添加到 SaveName.jsp 中 jsp 代码的顶部

<%@ page import="javabeans.UserData" %>

关于java - 将 jsp 页面链接到 java 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13474455/

相关文章:

java - java ZIP 文件系统中的多个文件 zip 错误

java - 如何在java中将proj_id的值设置为max(proj_id) + 1

javascript - 如何通过ajax调用调用JS函数

javax.servlet.ServletException : Communications link failure

java - 如何在JSP中访问AbstractMap.SimpleEntry的值?

java - 如何在jsp中将数组打印到输入字段?

java - 检查 EmptyOrNull 以获取未知数量的集合和 map

java - Jedis 过滤 hmset 中的值

java - 命令完成后 JSch 会退出吗?

java - 使用Java在MySql数据库中插入汉字