100分!追加100!javabeans怎么用??

请详细一点

从原理上来说,使用JavaBeans不过是使用一种特定的规范在Java程序中引入特定的类。你完全可以不使用JavaBeans而直接在Java程序中对这样的Java类进行说明并进行示例。当然,这无疑会降低你的程序的可读性,而且你将牺牲组件的可重复使用的特性。但是,对于一个简单的应用中的简单程序。你完全可以不必拘泥于使用JavaBeans。即便是对于JSP,你也可以做同样的选择,我们知道,在“”引起的程序段中,我们可以使用任何的纯Java语句,包括对一个新的对象的定义和示例。
使用JavaBeans是一个明智的选择
正如我们前面提到的,使用JavaBeans你可以充分利用组件的可重复使用的特性并增加你的程序的可读性。当你的应用日趋庞大时,你会发现,遵守这样的规范所带来的在开发和维护中的便利,相对于你所受到的约束,你完全值得做这样的交换。
JSP中是否必须严格遵守某些约定
在很多的JSP参考资料中都提到JavaBeans需要遵守JavaBeans规定,也就是JavaBeans API。但是,事实上在程序设计时,情况并没有这么复杂。你完全可以根据你自己的需要来定制你的JavaBeans。在这里,我们只要求JavaBeans是一个Java类,并不需要遵守其他规范。当然,对于这样的一个JavaBeans,你应该自己有一个清楚的认识。因为它可能并没有我们通常意义上所理解的JavaBeans的一些特性,对于某种极端的情况,你可能只能使用这样的语句来引入JavaBeans,然后来通过yourId这个JavaBeans的实例来处理并调用你的JavaBeans中的属性和方法。
JSP中JavaBeans的实质
我们注意到,一个引入JavaBeans的语句,其结构应该是,在这当中,我们必须对三个方面的内容进行定义。首先是一个id,这将对应于一个类的实例,如果这个实例已经存在,将直接引用这个实例;如果这个实例尚未存在,将通过我们在class中的定义从这个class中进行示例。这也就是我们要定义的第二个内容。最后,我们还实该在scope中定义id这个实例存在的范围,事实上这定义了这个实例所绑定的区域及其有效范围。
1、page:这个JavaBeans将存在于该JSP文件以及此文件中的所有静态包含文件中,直到页面执行完毕为止。这将基本等价于JSP中这样的Java语句。
2、request:这个JavaBeans将作为一个对象绑定于该页面的request中。简单地说该JavaBeans在该页面发出的请求中有效,这将基本等价于JSP中这样的Java语句。
3、session:这个JavaBeans将作为一个对象绑定于session中。简单地说该JavaBeans在本地有效,这将基本等价于JSP中这样的Java语句。
4、application:这个JavaBeans将作为一个对象绑定于application中。简单地说该JavaBeans在本应用中有效,这将基本等价于JSP中这样的Java语句。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-01-09
给你举个例子,在JSP中调用JAVABEAN:
首先,我定义了一个类:

package com.javaweb.ch07
public class UserBean {
private String username;
private String password;
public String getUsername() {
return username;
}

public void setUsername(String username) {
this.username = username;
}

public String getPassword() {
return password;
}

public void setPassword(String password) {
this.password = password;
}
}

我要在JSP中调用它,那么,JSP代码如:
<%@ page language="java" contentType="text/html;charset=gb2312"%>
<html>
<head>
<title>调用JavaBean</title>
</head>
<body>
<%--通过useBean动作指令调用JavaBean--%>
<jsp:useBean id="user" scope="page" class="com.javaweb.ch07.UserBean">
</jsp:useBean>
<%
// 设置user的username属性
user.setUsername("James");
// 设置user的password属性
user.setPassword("1234");
// 打印输出user的username属性
out.println("用户名:" + user.getUsername() + "<br>");
// 打印输出user的password属性
out.println("用户密码:" + user.getPassword());
%>
</body>
</html>

从以上的代码可以看出,对JAVABEAN中的属性值,是可以通过JSP Scriptlets(<% %>)来设定的,其实,还可以通过JSP代码来直接设定JAVABEAN中的属性值,主要有以下四种语法格式:
<jsp:setProperty name="实例化对象名" property="*"/>
<jsp:setProperty name="实例化对象名" property="属性名称"/>
<jsp:setProperty name="实例化对象名" property="属性名称" param="参数名称"/>
<jsp:setProperty name="实例化对象名" property="属性名称" value="属性值"/>
(具体的用法我这里不说了,你要知道的话HI我吧^_^)
第2个回答  2010-01-09
我也来说两句。我用JAVA两年了,这是我个人的看法,希望对你理解这个问题能有点帮助。我知道的JavaBean,都是用在web项目里,一个后台的类,提供给前台的JSP页面使用,这个类完成某个功能,比方说,往数据库加条记录,中文转码。首先,JavaBean说白了不过是一个Java类,和普通的Java类差不多,区别有3个:1.用private把不必要的属性隐藏起来,通过属性的getter和setter使类外可以拿到这些属性或者给它们设置值;2.必须实现序列化接口(java.io.Serializable),这是为了以后能把这个类的对象保存在硬盘上;3.必须有一个public的无参构造函数,因为使用者可能需要通过反射机制来实例化这个对象。大致就是是这3个标准,第2个标准,你也可以不遵从。除此之外JavaBean跟普通Java类没有区别。这样的一个Java类(也就是JavaBean),你可以在JSP页面上使用sun提供给我们的标签来操作它,至于哪些标签,楼上的朋友说的很清楚了。如果你写了一个类,这个类没有遵从上面那3个标准的话,你在jsp页面里用标签来操作这个类,可能会出错的。<jsp:setProperty name="实例化对象名" property="属性名称"/>这个标签,拿到你传给它的“属性名称”,然后把属性名称的第一个字母换成大写,再在前面加个“get”,你传给它的属性是“username”,标签处理时候,得到的是getUsername,然后通过反射,调用getUsername()方法,拿到username属性的值。
第3个回答  2010-01-09
...先磨...再煮...
第4个回答  2010-01-09
javabeans就是一个CLASS类,把它当成一个对象,想怎么用就怎么用,当然还是有规范的嘛,按规范做的一个CLASS,然后随意调用创建新对象就好了。就这么用。
第5个回答  2010-01-19
楼上的fighterJACK已经说的很明白了,而且还举了示例。
其实你可以简单的理解为jsp所需要操作的对象,javabean就是将对象属性封装成为一个bean。
还是拿创建用户来说:如果需要创建一个新的用户,那么你需要操作的对象就是用户这个bean,用户有名称、密码等属性,程序需要做的就是把在页面填充的对应的值填到一个实例化后的用户对象中,然后把对象持久化,用户bean就是对系统中对象的封装。
大家正在搜