转载

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

为了解决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>动作

正文到此结束
Loading...