【JavaWeb】(3)JavaBean
2015-07-06 10:29
671 查看
1. JavaBean简介
JavaBean就是符合某种特定的规范的Java类。使用JavaBean的好处是解决代码重复编写,减少代码冗余,功能区分明确,提高了代码的维护性。2. JSP动作
JSP动作元素(action elements),动作元素为请求处理阶段提供信息。动作元素遵循XML元素的语法,有一个包含元素名的开始标签,可以有属性、可选的内容、与开始标签匹配的结束标签。(1). 第一类是与存取JavaBean有关的,包括:
<jsp:Bean><jsp:setProperty><jsp:getProperty>
(2). 第二类是JSP1.2就开始有的基本元素,包括6个动作元素
<jsp:include><jsp:forward><jsp:param><jsp:plugin><jsp:params><jsp:fallback>
(3). 第三类是JSP2.0新增加的元素,主要与JSP Document有关,包括六个元素
<jsp:root><jsp:declaration><jsp:scriptlet><jsp:expression><jsp:text><jsp:output>
(4).
第四类是JSP2.0新增的动作元素,主要是用来动态生成XML元素标签的值,包括3个动作
<jsp:attribute><jsp:body><jsp:element>
(5).
第五类是JSP2.0新增的动作元素,主要是用在Tag File中,有2个元素
<jsp:invoke><jsp:dobody>
3.
在JSP页面中使用JavaBean
(1).像使用普通java类一样,创建JavaBean。
导入相关包直接使用即可。
(2).
在JSP页面中使用JSP动作标签。
<jsp:useBean>:在JSP页面中实例化或者在指定范围内使用JavaBean
语法:
<jsp:useBean id="标示符" class="java类名" scope="作用范围" />
只有当不存在id所指示的bean时才会创建一个新的bean,否则会使用存在的id的bean。
例如:
<jsp:useBean id="user" class="com.thr.bean.User" scope="page" /> 用户名:<%=user.getName()%><br /> 密码:<%=user.getPassword()%><br /><jsp:setProperty>:给已经实例化的JavaBean对象的属性赋值,一共有四种形式
语法:
1) <jsp:setProperty name="JavaBean实例名" property="*" />(跟表单关联)
当表单中控件的name属性和JavaBean中的属性名一致时,进行匹配。
2) <jsp:setProperty name="javaBean实例名" property="JavaBean属性名" />(跟表单关联)
当表单中控件的name属性和JavaBean中的属性名一致时,只匹配指定的属性。
3) <jsp:setProperty name="javaBean实例名" property="JavaBean属性名" value="BeanValue" />(手工设置)
人为的设置属性名的属性值,和表单无关。
4) <jsp:setProperty name="javaBean实例名" property="propertyName" param="request对象中的参数名" />(跟request参数相关)
通过从request传参数过来获取的值来赋给property属性。
<jsp:getProperty>:获取指定JavaBean对象的属性值。
语法:
<jsp:getProperty name="JavaBean实例名" property="属性名" />
4. JavaBean的四个作用域范围
使用useBeans的scope属性可以用来指定JavaBean的作用范围page:仅在当前页面有效
request:可以通过HttpRequest.getAttribute()方法取得JavaBean对象
session:可以通过HttpSession.getAttribute()方法取得JavaBean对象
application:全局有效,可以通过application.getAttribute()方法取得JavaBean对象
相关文章推荐
- Hive 启动 Diagnostic Messages for this Task: java.lang.Throwable: Child Error
- Hive 启动 Diagnostic Messages for this Task: java.lang.Throwable: Child Error
- Java 泛型
- eclipse调试的方法和技巧
- Spring JDBC
- JAMA:Java矩阵包
- [LeetCode][Java] ZigZag Conversion
- 【问题】java.lang.NoClassDefFoundError
- eclipse search打开第二个文件时 第一个文件就自己关闭了
- java泛型
- Java集合---Arrays类源码解析
- JAVA IO分析大汇总
- λ表达式之争:Scala vs Java8
- Java集合---Arrays类源码解析
- [LeetCode][Java]Longest Palindromic Substring
- spring boot web相关配置
- ubuntu下面安装eclipse教程
- 让ubuntu下的eclipse支持GBK编码
- 配置Mahout——ubuntu安装java开发环境
- Eclipse启动时报错