简单描述JSP2模式的三个特征

开发 后端
本文简单描述JSP2模式的三个特征,分别是userBean动作,getProperty动作以及setProperty动作。

为了解决JSP中编写java代码的可读性差和重用性差的问题,sun在web应用开发中推出使用JSP+javabean技术,这种模式称为JSP1。由于JSP1模式只适合系统规模小,业务简单的web应用开发,为了解决这一问题,sun在java  web开发中引入了MVC架构模式,这种模式就是JSP2模式。这种模式综合的利用servlet,JSP和javabean特点。

一个标准的javabean组件具有一下几个特征:

1.javabean类必须是一个公共的类,并将属性设置为public。

2.javabean类必须有一个空的构造函数。

3.一个javabean类不应该公共的实例变量,类变量都应该是private。

4.javabean应该是可序列化(serializable),即实现java.io.Serializable接口

为了能在JSP页面中使用javabean,SUN在JSP规范中提供了三种标准动作:

1.JSP2模式特征之< jsp:userBean>动作

要在JSP页面中使用标准动作与javabean实例通讯,首先要使用< jsp:userBean>动作实例话和使用bean:

格式:

  1. < jsp:userBean  id="beanName"  scope="page|request|session|application"  class="className"/> 

id:代表引用名,在其他地方,通过这个引用来访问bean的实例。这个id在一个页面中必须是一个唯一值。

class:指定javabean的包名及类名,容器可以在WEB-INF/class下去找到它。

scope:指定javabean生存的作用域,有4个可选值。默认是page(注意:他现在request范围内查找是否有id=“user”这个user属性,如果有则直接使用,如果没有就新建一个)

-page:bean的实例在当前页面中可用,页面完成后就删除实例。

-request:bean的实例保存在request作用域中,公用一个request作用域的多个JSP或者servlet可以共享这个bean的实例。

-session:bean的实例保存在session作用域中,用户在整个会话周期内就可以都可以使用这个对象。

-application:对当前的所有用户来说都可以使用这个javabean实例。

type:id引用的数据类型,默认情况下,它与class的类型相同。

beanName:使用java.beans.Beans.instantiate()方法从类文件中实例化Bean,不能与class属性同时使用。

2.JSP2模式特征之< jsp:getProperty>动作

允许JSP页面查询javabean的给定属性,可以把javabean的某一个属性取出来,并且在页面显示出来。通常和

< jsp:userName>动作一起使用。

语法格式:< jsp:getProperty  name="beanName"  property="propertyName">

name:是指在< jsp:userName>动作中指定的id名。

property:是返回javabean中相对应的属性名。

3.JSP2模式特征之< jsp:setProperty>动作

【编辑推荐】

  1. 简单介绍JSP环境配置
  2. Java Servlets(JSP)开发环境
  3. 开发JSP HTTP服务器
  4. 选择JSP开发工具
  5. Servlet和JSP路径详细介绍
责任编辑:yangsai 来源: 网络
相关推荐

2009-09-10 10:02:36

Frame JSP文件

2009-08-06 11:00:19

C#对象的使用

2023-03-16 11:04:00

CIO技术领导者

2010-11-15 10:50:43

Oracle启动模式

2019-04-29 16:14:43

Emacs记笔记应用

2019-09-18 18:32:29

前端javascriptoop

2011-07-13 09:26:56

云计算IDC

2013-04-01 09:20:05

JavaScript

2010-06-30 15:06:27

FTP数据传输模式

2018-06-12 00:07:18

2012-12-17 10:25:21

浪潮张东云数据中心

2023-04-26 11:14:11

IT领导者远程工作

2020-06-11 09:00:27

SDN网络架构网络

2010-03-24 10:32:05

Python多线程

2009-05-27 10:23:03

表管理列管理Oracle

2020-11-11 10:30:04

云开支云计算

2012-04-25 23:55:23

2010-09-17 15:17:20

TFTP服务器路由设置

2022-06-29 08:37:11

授权码模式底层

2018-10-09 10:07:06

点赞
收藏

51CTO技术栈公众号