Jsp:使用JavaBean 推荐
2007-02-22 11:55
459 查看
Jsp中使用JavaBean
本文介绍如何在Jsp[/i]中使用JavaBean[/i]。[/i]
@author:ZJ 07-2-21
Blog: http://zhangjunhd.blog.51cto.com/
1[/b].[/b]JavaBean[/b]组件标准[/b][/b]
①实现java.io.Serializable接口
②提供无参数的构造方法
③提供getter()和setter()方法访问它的属性
2[/b].在[/b]JSP[/b]中使用[/b]JavaBean[/b]
JSP规范中定义了<jsp:useBean>、<jsp:setProperty>、<jsp:useProperty>来建立对JavaBean的引用并读取/设置JavaBean的属性值。
2.1 <jsp:useBean>
执行过程:
①在指定的scope中查找名为name的JavaBean实例。
②若找到,则创建一个名为name、类型为classname的局部变量,其引用指向该JavaBean;若未找到,则在该scope中创建一个名为name、类型为classname的JavaBean,并创建相应的局部变量指向它。
2.2<jsp:setProperty>
其中:
①name=”beanName”是必选属性。其值为Bean的名称,在这之前用jsp:useBean引入的id。
例:
②propertyDetails可以通过四种不同的方法来指定属性的信息。
[1]property=”*”
这是一种设置Bean属性的快捷方式,在Bean中,属性的名称、类型必须和request对象中的参数名称相匹配。如果request对象的属性值中有空值,那么对应的Bean属性将不会设置任何值。同样,如果Bean中有一个属性没有与之对应的request参数值,那么这个属性同样不会设定。使用property=”*”,Bean的属性不用按HTML表单中的顺序排序。
[2]property=”propertyName”
使用request中的一个参数值来指定Bean中的一个属性值。这里,property指定Bean的属性名,而且Bean属性和request参数的名称应相同。如果request对象的参数值中有空值,那么对应的Bean属性将不会被设定任何值。
[3]property=”propertyName” param=”parameterName”
在Bean属性的名称和request中参数的名称不同时可以使用这个方法。Param指定request中的参数名。如果request对象的参数值中有空值,那么对应的Bean属性将不会被设定任何值
[4]property=”propertyName” value=”propertyValue”
value是一个可选属性,它使用指定的值来设定Bean的属性。如果参数值为空,那么对应的属性值也不会被设定。不能在一个<jsp:setProperty>中同时使用param和value。
2.3 <jsp:getProperty>
<jsp:getProperty>操作是对<jsp:setProperty>操作的补充,它用来访问一个Bean属性。
①name=”beanName”是必选属性。其值为Bean的名称,在这之前用jsp:useBean引入的id。
例:
②property=”propertyName”是一个必选属性。其值为所指定的Bean的属性名。
3[/b].注册实例[/b]1[/b],使用[/b]property=”*”[/b]
UserBean.java
reg.html
reg.jsp
4[/b].注册实例[/b]2[/b],使用[/b]param=”parameterName”[/b]
UserBean.java与上例相同
reg2.html
reg2.jsp
本文介绍如何在Jsp[/i]中使用JavaBean[/i]。[/i]
@author:ZJ 07-2-21
Blog: http://zhangjunhd.blog.51cto.com/
1[/b].[/b]JavaBean[/b]组件标准[/b][/b]
①实现java.io.Serializable接口
②提供无参数的构造方法
③提供getter()和setter()方法访问它的属性
2[/b].在[/b]JSP[/b]中使用[/b]JavaBean[/b]
JSP规范中定义了<jsp:useBean>、<jsp:setProperty>、<jsp:useProperty>来建立对JavaBean的引用并读取/设置JavaBean的属性值。
2.1 <jsp:useBean>
<jsp:useBean id=”name” class=”classname” scope={“page\request\session\application”}/> |
①在指定的scope中查找名为name的JavaBean实例。
②若找到,则创建一个名为name、类型为classname的局部变量,其引用指向该JavaBean;若未找到,则在该scope中创建一个名为name、类型为classname的JavaBean,并创建相应的局部变量指向它。
2.2<jsp:setProperty>
<jsp:setProperty name=”beanName” propertyDetails/> |
①name=”beanName”是必选属性。其值为Bean的名称,在这之前用jsp:useBean引入的id。
例:
<jsp:useBean id=”usersession” scope=”session” class=”com.user.UserSession”> <jsp:setProperty name=”usersession” property=”name” value=”Tom”/> </jsp:useBean> |
[1]property=”*”
这是一种设置Bean属性的快捷方式,在Bean中,属性的名称、类型必须和request对象中的参数名称相匹配。如果request对象的属性值中有空值,那么对应的Bean属性将不会设置任何值。同样,如果Bean中有一个属性没有与之对应的request参数值,那么这个属性同样不会设定。使用property=”*”,Bean的属性不用按HTML表单中的顺序排序。
[2]property=”propertyName”
使用request中的一个参数值来指定Bean中的一个属性值。这里,property指定Bean的属性名,而且Bean属性和request参数的名称应相同。如果request对象的参数值中有空值,那么对应的Bean属性将不会被设定任何值。
[3]property=”propertyName” param=”parameterName”
在Bean属性的名称和request中参数的名称不同时可以使用这个方法。Param指定request中的参数名。如果request对象的参数值中有空值,那么对应的Bean属性将不会被设定任何值
[4]property=”propertyName” value=”propertyValue”
value是一个可选属性,它使用指定的值来设定Bean的属性。如果参数值为空,那么对应的属性值也不会被设定。不能在一个<jsp:setProperty>中同时使用param和value。
2.3 <jsp:getProperty>
<jsp:getProperty>操作是对<jsp:setProperty>操作的补充,它用来访问一个Bean属性。
<jsp:getProperty name=”beanName” propertry=”propertyName”/> |
例:
<jsp:useBean id=”usersession” scope=”session” class=”com.user.UserSession”> <jsp:getProperty name=”usersession” property=”name” /> </jsp:useBean> |
3[/b].注册实例[/b]1[/b],使用[/b]property=”*”[/b]
UserBean.java
[align=left]package com.zj.sample;[/align] [align=left]import java.io.Serializable;[/align] [align=left]/**[/align] [align=left] * Create a JavaBean[/align] [align=left] */[/align] [align=left]public class UserBean implements Serializable {[/align] [align=left] private static final long serialVersionUID = 1L;[/align] [align=left] public String userName;[/align] [align=left] public String password;[/align] [align=left] public int age;[/align] [align=left] [/align] [align=left] public UserBean() {}[/align] [align=left] [/align] [align=left] public void setUserName(String name) {[/align] [align=left] this.userName = name;[/align] [align=left] }[/align] [align=left] [/align] public void setPassword(String password) { [align=left] this.password = password;[/align] [align=left] }[/align] [align=left] [/align] [align=left] public void setAge(int age) {[/align] [align=left] this.age = age;[/align] [align=left] }[/align] [align=left] [/align] [align=left] public String getUserName() {[/align] [align=left] return this.userName;[/align] [align=left] }[/align] [align=left] [/align] [align=left] public String getPassword() {[/align] [align=left] return this.password;[/align] [align=left] }[/align] [align=left] [/align] [align=left] public int getAge() {[/align] [align=left] return this.age;[/align] [align=left] }[/align] } |
[align=left]<html>[/align] [align=left]<head>[/align] <meta http-equiv="Content-Type" content="text/html; charset=GB18030"> [align=left] <title>Reg</title>[/align] [align=left]</head>[/align] [align=left]<body>[/align] [align=left] User Info:<br><hr>[/align] <form method="get" action="reg.jsp"> [align=left]<table>[/align] // name="userName"对应UserBean属性 <tr><td>Name:<input name="userName" type="text"></td></tr> [align=left] //name="password"对应UserBean属性[/align] [align=left]<tr><td>Password:<input name="password" type="password"></td></tr> [/align] [align=left] //name="age"对应UserBean属性[/align] <tr><td>Age:<input name="age" type="text"></td></tr> [align=left] <tr><td><input type="submit" value="submit"></td></tr>[/align] [align=left] </table>[/align] [align=left] </form> [/align] [align=left]</body>[/align] </html> |
<%@ page language="java" contentType="text/html; charset=GB18030" [align=left] pageEncoding="GB18030"%>[/align] [align=left]<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">[/align] [align=left]<jsp:useBean id="user" scope="page" class="com.zj.sample.UserBean" />[/align] <jsp:setProperty name="user" property="*" />//使用property="*" [align=left] [/align] [align=left]<html>[/align] [align=left]<head>[/align] <meta http-equiv="Content-Type" content="text/html; charset=GB18030"> [align=left] <title>Show Info</title>[/align] [align=left]</head>[/align] [align=left]<body>[/align] [align=left] Reg successful![/align] // property="userName"对应UserBean属性 <br><jsp:getProperty name="user" property="userName" /> // property="password"对应UserBean属性 <br><jsp:getProperty name="user" property="password" /> // property="age"对应UserBean属性 <br><jsp:getProperty name="user" property="age" /> [align=left] <br>[/align] [align=left]</body>[/align] </html> |
UserBean.java与上例相同
reg2.html
[align=left]<html>[/align] [align=left]<head>[/align] <meta http-equiv="Content-Type" content="text/html; charset=GB18030"> [align=left] <title>Reg</title>[/align] [align=left]</head>[/align] [align=left]<body>[/align] [align=left] User Info:<br><hr>[/align] <form method="get" action="reg2.jsp"> [align=left] <table>[/align] <tr><td>Name:<input name="USERNAME" type="text"></td></tr> <tr><td>Password:<input name="PASSWORD" type="password"></td></tr> <tr><td>Age:<input name="AGE" type="text"></td></tr> [align=left] <tr><td><input type="submit" value="submit"></td></tr>[/align] [align=left] </table>[/align] [align=left] </form> [/align] [align=left]</body>[/align] </html> |
<%@ page language="java" contentType="text/html; charset=GB18030" [align=left] pageEncoding="GB18030"%>[/align] [align=left]<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">[/align] [align=left]<jsp:useBean id="user" scope="page" class="com.zj.sample.UserBean"/>[/align] // property="userName"对应UserBean属性,param="USERNAME"对应表单属性 <jsp:setProperty name="user" property="userName" param="USERNAME"/> // property="password"对应UserBean属性,param="PASSWORD"对应表单属性 <jsp:setProperty name="user" property="password" param="PASSWORD"/> // property="age"对应UserBean属性,param="AGE"对应表单属性 <jsp:setProperty name="user" property="age" param="AGE"/> [align=left]<html>[/align] [align=left]<head>[/align] <meta http-equiv="Content-Type" content="text/html; charset=GB18030"> [align=left] <title>Show Info</title>[/align] [align=left]</head>[/align] [align=left]<body>[/align] [align=left] Reg successful!<br>[/align] // property="userName"对应UserBean属性 Name:<jsp:getProperty name="user" property="userName"/><br> // property="password"对应UserBean属性 Password:<jsp:getProperty name="user" property="password"/><br> // property="age"对应UserBean属性 Age:<jsp:getProperty name="user" property="age"/><br> [align=left]</body>[/align] </html> |
相关文章推荐
- 你如何使用javaBean操作数据库(摘自www.CnJsp.com)
- JSP中如何使用JavaBean
- JavaBean简单介绍与使用(实例:JSP+JavaBean注册验证)
- JSP培训(10)——使用JavaBean封装对数据库的访问、连接池的配置和使用
- JSP培训(5)——使用JavaBean完成业务逻辑
- jsp学习--JavaBean定义和在Jsp中使用JavaBean
- JSP中使用的模式——JSP+JavaBean
- JSP使用JavaBean
- 使用jsp调用javabean实现超简单网页计算器示例
- javaBean在jsp中的使用
- 在JSP中使用JavaBean
- 使用自定义标签,将结果集返回到jsp页面!(推荐方法)
- Jsp使用JavaBean
- 在JSP中使用JavaBean
- 如何在SpringBoot中使用JSP ?但强烈不推荐,果断改Themeleaf吧
- JSP中如何使用JavaBean
- JSP学习笔记(五)-----JSP中使用JavaBean
- 在jsp页面使用el表达式获取javaBean属性值
- 在JSP中使用JavaBean
- Jsp:使用JavaBean