jsp中使用javaBean,运行显示值无效The value is invalid

错误提示:The value for the useBean class attribute com.jan.seven.Student is invalid
我是在src里建了一个包com.jan.seven
Student类
package com.jan.seven;

public class Student {
private String name;
private int age;
public Student()
{

};

public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
编译后包在WebRoot\WEB-INF\classes目录下
.class文件在WebRoot\WEB-INF\classes\com\jan\seven下

useBean.jsp文件在项目\WebRoot目录下
<%@ page language="java" import="com.jan.seven.Student" contentType="text/
html;pageEncoding=gb2312" %>



<% student.setAge(20);
student.setName("杏"); %>

名字是:

年龄是:




错误/WebRoot/useBean.jsp(行:5,列:0)useBean类属性com.jan.seven.Student的值是无效的。

在这个百分号里new,没有new对象。你直接调用的,望采纳。
<% student.setAge(20);
student.setName("杏"); %>
名字是:
年龄是:

<% student.setAge(20);
student.setName("杏"); %>

jsp代码中没有实例化Student类的对象,修改成这样即可
<%Student student=new Student();
student.setAge(20);
student.setName("杏"); %>
名字是:<%out.println(student.getName()); %>
年龄是:<%out.println(student.getAge()); %>

 <% 
Student student = new Student(); 
 student.setAge(20);
student.setName("杏"); %>
名字是:<%=student.getName %>

年龄是:<%=student.getAge %>

你要是用Student 得先new 一个对象出来啊。你自己写的那个student 是石头缝蹦出来的吗

java 万物皆对象, 你使用任何东西(当然也有不需要的) 其实都是要new 出来的。

你使用学生这个类
一方面要 记得引入正确的包名
一方面要把对象new 出来再操作

该例
(摘抄楼上niaonao)
<%
Student student = new Student();
student.setAge(20);
student.setName("杏"); %>
名字是:<%=student.getName %>

年龄是:<%=student.getAge %>
该写法是正确的

可以考虑用
jsp:setProperty和jsp:getProperty方法

实体类未进行实例化,得new 一个...