jsp:useBean标准动作
1.bean法则
JavaBean和企业JavaBean是完全不相干的两个东西。普通的非企业JavaBean需要满足一定的规范才能被JSP和servlet使用:
1)必须有一个无参数的公共构造函数;
2)必须按命名约定来命名公共的获取方法和设置方法;
3)设置方法的参数类型和获取方法的返回类型必须一样;
4)性质名和类型是由获取方法和设置方法得出,而不是得自于类的一个成员;
5)结合JSP使用时,性质类型必须是String或者其他基本类型,否则还是要使用脚本;
2.为什么使用标准动作
通过使用标准动作,可以消除JSP中的所有脚本代码,标准动作会使JSP更简单。
例如在servlet中设置了一个person属性:


使用bean标准动作对web页面设计人员的意义比对java程序员的意义更重大,他们不需要了解底层的只是,可以把bean想成是包含字段的记录,而且使用标准动作比使用脚本更容易维护。
3.<jsp:useBean>用法
声明和初始化一个bean属性

如果使用<jsp:useBean>在scope中找不到属性对象,它就会创建一个,scope默认为page。
设置bean的属性值

如果把<jsp:setProperty>放在<jsp:useBean>的体中,只有在创建新bean时才会设置属性值。如果发现对于制定的scope和id已经有一个bean,就不会运行体中的set方法重置这个属性。
得到bean的属性值
bean的多态引用
可以使用<jsp:useBean>建立多态的bean引用,其中type指定引用类型,class为对象类型。如果使用了type,但没有class,bean必须已经存在,否则,即使type设置为具体的对象类型,容器还是假定只有引用类型,没有对象类型,会报错无法初始化person对象。


向bean发送请求参数
可以使用<jsp:setProperty>的param属性向bean发送请求参数,设置bean的属性,只需指定请求参数

还可以这样

如果请求参数名与bean属性名匹配,就不需要在<jsp:setProperty>标记中为该性质指定值
甚至还可以这样

bean标记会自动转换基本类型的性质,不用自己来完成解析和转换。但是如果使用脚本,bean不会完成String 到基本类型的转换:

jsp:useBean标准动作的更多相关文章
- include指令和<jsp:include>标准动作
利用JSP的包含机制,可以有效的避免重复,把可重用的部分独立出去,使用include把它们包含到当前文件.JSP有两种包含机制:include指令和<jsp:include>标准动作. 1 ...
- <jsp:useBean>动作的使用
jsp:useBean动作的使用 jsp:useBean动作用于在指定的范围内寻找指定名称的JavaBean对象,如果找到,则返回该对象的引用可以操作里边的属性.如果没有找到则重新实例化一个对象.并且 ...
- [04] JSP标准动作
1.概述 JSP规范中定义了一系列的标准动作,Web容器按照规范进行了实现,可以解析并执行标准动作.而标准动作使用的是标准的xml语法,看上去也比较直观易懂,下面来看一个结构例子: <jsp:a ...
- jsp标准动作
JSP标准动作元素的使用格式为:<jsp:标记名>,它採用严格的xml标签语法来表示.这些jsp标签动作元素是在用户请求阶段运行的,这些标准动作元素是内置在jsp文件里的,所以能够直接使用 ...
- Java Web程序设计笔记 • 【第4章 JavaBean和JSP标准动作】
全部章节 >>>> 本章目录 4.1 JavaBean 4.1.1 JavaBean 概述 4.1.2 JavaBean的重要性 4.1.3 JavaBean的特点 4.1 ...
- JSP通用7动作命令
JSP通用7动作命令 1.jsp:forward指令 运行页面转向.将请求处理转发到下一个页面 2.jsp:param指令 用于传递參数 3.jsp:include指令 用于动态引入 ...
- JSP指令与动作
Jsp基本指令和动作 (2011-08-18 16:25:13) 转载▼ 标签: 杂谈 分类: java JSP基本指令 jsp命令指令用来设置与整个jsp页面相关的属性,它并不直接产生任何可见的输出 ...
- <jsp:useBean>、<jsp:setProperty>与<jsp:getProperty>
<jsp:useBean>标签 会调用java对象的无参构造方法,来创建实例. <jsp:useBean>标签是用来搭配JavaBean元件的标准标签,这里指的JavaBean ...
- 【jsp】jsp中的动作元素
一,动作元素(Action):预定义的java代码.目的在于代码的可重用性. 1,为请求阶段提供信息,允许在页面之间转移控制权. 2,JSP2.0规范定义了标准动作,标准动作是一些标签,影响JSP运 ...
随机推荐
- iOS开发之Xcode 6 国际化
Xcode6 国际化 (1) 新建一个Single View app模版项目,命名为LocalizationTest 1.建立strings文件,命名为Localization.strings 2.点 ...
- Centos7 PHP7 编译安装 开机自启动
1.PHP7.0.13下载 wget http://cn2.php.net/get/php-7.0.13.tar.gz/from/this/mirror 2.解压 .tar.gz 3. 进入目录 cd ...
- pdmreader支持读取xml格式的pdm文件,无法读取二进制格式的pdm文件。
您的Pdm数据字典文件可能不被PDMReader读取,可能是因为pdm文件版本的问题.但 您可以通过PowerDesigner12(下载PowerDesigner12)进行转换 后进行读取. 您要做的 ...
- centos JDK安装
第一步:查看Linux自带的JDK是否已安装 (卸载centOS已安装的1.4) 安装好的CentOS会自带OpenJdk,用命令 java -version ,会有下面的信息: java versi ...
- RTB
RTB —— Real Time Bidding 的简称,就是实时竞价.跟传统购买形式相比,RTB是在每一个广告展示曝光的基础上进行竞价,就是每一个PV都会进行一次展现竞价,谁出价高,谁的广告就会被这 ...
- Unity5 新功能解析--GI(全局光)
http://blog.csdn.net/leonwei/article/details/48009059 Unity5带来的最大的改变就是全新的GI,在烘焙引擎上抛弃了4的beast,使用了虚幻采用 ...
- jq手风琴---点击时列表的左边距逐渐减小
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- 【转】commons-lang.jar包简介
转自:http://zhidao.baidu.com/share/71b48e6b3e1b1dc73fe705604b9c7584.html 1.下载jar包 包官方下载地址:http://commo ...
- 《Java程序设计》第八周学习总结
20145224 <Java程序设计>第八周学习总结 教材学习内容总结 第15章 通用API 15.1.1 日志API简介 ·java.util.logging包提供了日志功能相关类与接口 ...
- javascript 对象和数组(花括号、方括号)
1. javascript对象定义 var a = {var a = "test", var b = "test"} 2. javascript数组定义 var ...
