一个标准的JavaBean有以下几个特性:
1、JavaBean是一个公共的(public)类。
2、JavaBean有一个不带参数的构造方法。
3、JavaBean通过setXXX方法设置属性,通过getXXX方法获取属性。
为了让反射成功运用到这个类上,所以要符合以上特性。没有反射,就没有大多数的框架。
如果你提供了一个带参的构造方法,要手工地写一个不带参的构造方法哦。
JSP访问JavaBean的语法:
1、导入JavaBean类。
2、声明JavaBean对象。
3、访问JavaBean属性。
首先有一个JavaBean:
//yoursys.where.you.know.Person.java public class Person { private String name = "zhangsan"; private int age = 10; private String address = "beijing"; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getName() { return age; } public void setName(int age) { this.age = age; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } }
在jsp页面里:
//javabean.jsp
<!-导入-->
<%@ page language="java" import="yoursystem.whrere.you.know.Person" pageEncoding="UTF-8"%>
<html>
<head>
</head>
<body>
<!-下面来声明-->
<jsp:useBean id = "person" class="yoursystem.whrere.you.know.Person"></jsp:useBean>
<!-好,接下来访问属性--> <jsp:getProperty property="name" name="person"/><br>
<jsp:getProperty property="age" name="person"/><br>
<jsp:getProperty property="address" name="person"/><br>
</body> </html>
getProperty有两个属性,一个Property,一个name,前者的值是要获取的属性名,后者的值是该javabean,必须和和声明处的id值一致。
当然,你也可以给这个对象的属性设置一个值:
<jsp:getProperty property="name" name="person" value="lisi"/><br>
这下就不是zhangsan而是lisi了。
当然,你也可以完全这样用java写:
<body> <% Person person = new Person(); out.println(person.getName()); %> </body>
其实是一样的。但是这样不够整洁,用javabean好看一点,看不见java代码,整洁。