JavaBean实质上是一个Java类,但具有其独有的特点,包括:
- JavaBean是公共类
- 有一个默认的无参构造方法
- 属性必须声明为private,方法必须声明为public
- 用一组set方法设置Javabean的内部属性
- 用一组get方法获取内部属性的值
- Javabean是一个没有main方法的类
JavaBean和JSP技术的结合不仅可以实现表示层和业务逻辑层的分离,还可以提高JSP程序运行的效率和代码重用程度,并且可以实现并行开发,是JSP编程中常见的技术。在JSP中提供了<jsp:useBean>、<jsp:getProperty>、<jsp:setProperty>动作元素来实现对JavaBean的操作。
<jsp:useBean>操作
基本语法格式如下:
<jsp:useBean id="beanName" scope="" class=" " type="typeName" beanName="">
</jsp:useBean>
属性名 | 功能 |
---|---|
id | JavaBean对象的唯一标志,代表了一个Javabean对象的实例。它具有特定的存在范围,在JSP中通过id来识别JavaBean |
scope | 代表了Javabean对象的生存时间,可以是page、request、session、application中的一种,默认是page。 page是指此JSP文件以及此文件的所有静态包含文件中使用指定的JavaBean,直到页面执行完毕,向客户端发出响应,或转到另一个页面为止。 request是指在任何执行相同请求的JSP文件中都可以使用JavaBean,直到页面执行完毕,向客户端发出响应,或转到另一个页面为止 session是指从创建Javabean开始,能在任何使用相同session的JSP文件中使用指定的JavaBean,Javabean存在于整个session生命周期中 application是指从创建JavaBean开始,在任何使用相同application的JSP文件中使用指定的JavaBean,改JavaBean存在于整个application生命周期中,直至服务器重新启动 |
class | 代表JavaBean对象的class名(所对应的class所在的路径,注意大小写) |
type | 指定引用了JavaBean实例的变量的类型 |
beanName | 指定JavaBean的名字,如果提供了type和beanName属性,就允许省略class属性 |
<jsp:setProperty>操作
用来设置JavaBean的属性值,基本语法如下:
<jsp:setProperty property="" name="beanName"/>
属性名 | 功能 |
---|---|
name | 代表通过<jsp:useBean>定义的JavaBean对象实例 |
property | 代表要设置属性property的名字,可设置为: 1、 property=“*” 2、 property=“propertyName” 3、 property=“propertyName” param="paramName" 4、 property=“propertyName” value="propertyValue" |
param | 代表页面请求request的参数名字,<jsp:setProperty>元素不能同时使用param和value属性 |
value | 代表赋给JavaBean的属性property的具体值 |
<jsp:getProperty>操作
<jsp:getProperty>的基本语法格式如下:
<jsp:getProperty property="" name=""/>
属性名 | 功能 |
---|---|
name | 代表通过<jsp:useBean>定义的JavaBean对象实例 |
property | 代表要获得值的那个property属性的名称 |
JavaBean的小示例:https://download.csdn.net/download/spring_east/10802600
通过实现JavaBean的交互功能,实现了一个登录模块的简单功能,默认登录账号和密码分别为admin和password,若账号和密码输入正确,则页面显示登录成功,否则显示登录失败。