1、JavaBean概述:

什么是JavaBean?

  • JavaBean是Java的可重用组件技术,实质是一种符合某些命名和设计规范的Java类。通过对属性和方法的封装,成为具有独立功能,可重复使用并且可以与其他控件通信的组件对象。
  • JSP通过JavaBean执行负责计算任务、封装事务逻辑以及封装数据等等。

在JSP的Web应用中集成JavaBean组件,由JavaBean中处理业务逻辑,然后在JSP中调用,而JSP页面着重网页界面的设计,可以实现业务逻辑和前台显示的部分分离。

2、JavaBeans通常遵循的编写规范:
  1. JavaBean是一个public类。
  2. 一定使用了package语句进行打包。
  3. 有一个无参数的构造方法。//由于Java类中不写构造方法默认也是存在一个无参构造的,所以可以不用管这条。
  4. 属性一般是私有的,以保证数据的完整性和封装性。
  5. 对属性值的获取有相应的getXxx(),setXxx()方法,并且此方法是公有的,若要获取属性为boolean类型则可以使用isXxx()方法。

例:

package cn.javabean;public class LoginBean {private String name;private String password;public String getName() {return name;}public void setName(String name) {this.name = name;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}}
3、JSP中使用JavaBean的动作标签主要有三个:
标签 作用
<jsp:useBean> 在网页中创建一个Bean
<jsp:setProperty> 用于为Bean中的属性赋值
<jsp:getProperty> 用于获取Bean中属性的值

1、useBean

<jsp:useBean id="beanname"  class="package.class" [scope="page|request|session|application"] />
  • 功能:相当于创建了“package.class”类的一个对象,对象的名字是“beanname”。
  • scope的值指定了该对象的作用范围,可取的值有4个:page、request、session、application。

2、setProperty

<jsp:setProperty>标签。表示为bean的属性赋值,有三种用法。

第一种用法:直接赋值

<jsp:setProperty  name="beanName" property="propertyName" value="propertyValue"   />

用来为bean的属性赋值。

其中name指出是在操作哪个bean(即useBean中的id的值),property指出对该bean的哪个属性赋值,value用来指定给属性赋的值。

第二种用法:传参

<jsp:setProperty  name="beanName" property="propertyName" param="paramName" />

表示将一个传入参数的值赋给bean的某个属性。

注意:param表示传入参数的名字(即从表单提交的数据)。

第三种用法

<jsp:setProperty  name="beanName" property="propertyName" />

上述语句和如下语句完全等价:

<jsp:setProperty name="beanName" property="propertyName" param="propertyName"  />

第四种用法

<jsp:setProperty  name="beanName" property="*" />

在这种用法中,JSP容器会一个个检查传入的参数,如果某个传入参数的名字和bean中某个属性的名字相同,则将该参数的值赋给bean中的属性。

优点:使用这种方式可以一次为多个属性赋值。

3、getProperty

<jsp:getProperty>标签:

<jsp:getProperty  name="beanName" property="propertyName " />

用于获取bean中某个属性的值,并显示在当前页面。
name指出了要获取哪个bean的属性值,property指出要获取该bean的哪个属性值。

4、应用范围:


JSP——JavaBean应用相关推荐

  1. 基于Servlet+JSP+JavaBean开发模式的用户登录注册

    基于Servlet+JSP+JavaBean开发模式的用户登录注册 一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复 ...

  2. JSP+JavaBean+Servlet工作原理实例…

    JSP+JavaBean+Servlet工作原理实例讲解 首先,JavaBean和Servlet虽都是Java程序,但是是完全不同的两个概念.引用mz3226960提出的MVC的概念,即M-model ...

  3. JSP JavaBean

    JSP JavaBean JavaBean是特殊的Java类,使用J ava语言书写,并且遵守JavaBean API规范. 接下来给出的是JavaBean与其它Java类相比而言独一无二的特征: 提 ...

  4. JSP+JavaBean+Servlet技术(MVC模型)

    一,Servlet开发 用户在浏览器中输入一个网址并回车,浏览器会向服务器发送一个HTTP请求.服务器端程序接受这个请求,并对请求进行处理,然后发送一个回应.浏览器收到回应,再把回应的内容显示出来.这 ...

  5. JavaWeb开发模式:C/S模式,B/S模式,JSP+JavaBean模式,JSP+Servlet+JavaBean模式

    JavaWeb开发模式 1.C/S开发模式 1.C/S架构:客户端Client/服务端Server: a.出现较早,主要应用于局域网内: b.胖客户端:需要特定软件支持(安装客户端) 逻辑关系图如下: ...

  6. javaweb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册

    一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...

  7. javaweb学习总结(二十二):基于Servlet+JSP+JavaBean开发模式的用户登录注册

    一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...

  8. javaweb学习总结——基于Servlet+JSP+JavaBean开发模式的用户登录注册

    一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...

  9. 方立勋_30天掌握JavaWeb_(Servlet+JSP+JavaBean实现)用户注册和登陆

    JSP+JavaBean模式适合开发业务逻辑不太复杂的web应用程序,这种模式下,JavaBean用于封装业务数据,JSP即负责处理用户请求,又显示数据. Servlet+JSP+JavaBean(M ...

  10. 方立勋_30天掌握JavaWeb_(JSP+JavaBean实现)简单计算器

    JSP+JavaBean模式适合开发业务逻辑不太复杂的web应用程序,这种模式下,JavaBean用于封装业务数据,JSP即负责处理用户请求,又显示数据. Servlet+JSP+JavaBean(M ...

最新文章

  1. Oracle-AWR管理包DBMS_WORKLOAD_REPOSITORY.MODIFY_SNAPSHOT_SETTINGS
  2. Spring构造注入重载
  3. linux下面的浏览器不停自动打开新网页
  4. 从去除毛刺的策略看开运算opening_circle和闭运算closing_circle的异同
  5. 【C++grammar】文件系统以及path类使用
  6. U盘装win7系统出现question(1808)的原因与解决方法
  7. python安装插件报错原因_Sublime Text3 python自动补全问题——Sublime Text3安装Anaconda插件...
  8. 研究生学习阶段时间安排
  9. Windows Restart Manager 重启管理器
  10. linux搭建一个配置简单的nginx反向代理服务器 2个tomcat
  11. 2022年PMP培训机构如何挑选?哪家好?
  12. 暴几个用明文在网上传输用户名密码的网站
  13. 如何批量等比例缩放图片尺寸?
  14. SQL注入漏洞--2
  15. Ansible(十四)-- ansible 中的变量(三) set_fact 模块 注册变量实现跨play调用变量
  16. mmClassification学习笔记
  17. layert弹出层关于layer.open,打开页面时的用法
  18. html中如何做出生年月日,出生年月日怎么换成生辰八字
  19. Matter理论介绍-通用-1-04:桥接器-其他功能
  20. jz2440---使用uboot烧录程序

热门文章

  1. 七十三、从三数之和探究双指针思想
  2. 记录处理搜狗新闻分类
  3. php贝叶斯,php – 将单个概率与朴素贝叶斯垃圾邮件过滤相结合
  4. java normalize_java – XPath normalize-space()返回一系列规范化字符串
  5. 预训练生成模型:结合VAE与BERT/GPT-2提高文本生成效果
  6. 飞桨全新发布,核心框架首次完整公开解读
  7. AI学习与进阶实践-基于行业价值的AI学习与进阶路径
  8. 上传到GitHub或者码云中README文件无法显示图片
  9. 启动mysql提1067_win7系统启动mysql服务提升错误1067进程意外终止的解决方法
  10. 元件库导入_Axure RP9【元件库的学习】