JavaBean为何物?
JavaBean为何物?
摘要:初学SSM框架之后,我对JavaBean这个东西开始有了简单的接触,在很久以前听见JavaBean这个词一直以为是一个非常高大上的东西,但是在仔细研究之后发现其本质并没有那么复杂,这篇笔记将主要对JavaBean进行一个简单的概念上的解释。
JavaBean严格意义上将不算是一门技术,而算是一种约定,一种概念。我们在初学Java的时候总会学习面向对象这个概念,而老师在讲面向对象这个概念的时候总会举一些例子帮我们理解什么是对象,比如:人类是类,人类中的一个个体就是对象,人类的具备的所有属性和行为封装在一个人类的集合概念中,这个抽象的概念就是类,而抽象概念中一个具体的个体就是对象。面向对象的思想来自于博物学中的归类,是对世界万物的一个仿生。这样理解确实能够让我们很好的理解什么是类,什么是对象,但是也为我们造成了一个误区,这会让很多初学者认为:Java类总是对应了生活中确实存在的一种物体的集合,如汽车类,衣服类等等。
而在我们初学JavaBean的时候,有些老师会为了让我们先老实的用,而不是因为思考进入误区,而将JavaBean解释成:Java类,Java类就是JavaBean,这时真正的误差就出现了,如果在这里出现了思想误差,在以后的学习中就会失之毫厘谬以千里。
JavaBean为何物?
JavaBean是类,但是类不一定是JavaBean,首先我们应该明确在Java语言中,一切都是基于类的,尽管这么说有些夸张,但是在大部分的框架中,Java的信息传递都是通过类来传递的,如SSM项目,就连最基本的Servlet框架,我们也会潜意识的使用类来进行信息的传递,如我们想要从数据库和后台向前台传递一个人的信息,我们通常会先声明一个人类,然后new一个新的人类对象,将信息封装在对象中再传递这个对象,这样一来我们就直接将所有信息传递到了前台,这样做在信息传递的时候非常干净利落,在数据接收端也是非常方便,就像我们从网上买了一堆东西,这些东西打包一次送来总比拆成多个小件货然后零散的发送到各个快递点让我们再去拿好得多。
JavaBean就是在Java项目中负责进行信息传递的一种类,需要注意的是其针对的东西并不是项目中的角色,而是信息实体,它封装的往往是一些有相关性的信息,这些信息按照一定的方式组合封装,可以表达一种存在实际含义的东西,同时这些信息的传递通常会同时出现,如:登录信息中的账号信息与密码信息,文章信息中的创建时间,文章内容,作者等信息。我们发现这些信息集合并不总是表示一个确实存在的实体,如登录信息,但是它一定是一个信息实体,它是一种有意义的信息组合,这些信息组合经常性的同时出现,而进行一次有意义的行为,这样的有规律的,信息种类固定的信息组合被封装到一个类中,我们就称之为:JavaBean。
JavaBean因为专职信息传递,因此其有着严格的定义:这个Java类必须具有一个无参的构造函数;属性必须私有化;私有化的属性必须通过public类型的方法暴露给其它程序,并且方法的命名也必须遵守一定的命名规范。只有符合这样的一个约定,一个类才能称之为JavaBean,这就是JavaBean。
需要注意的是尽管JavaBean表示的往往不是一个角色,但是它大部分的时间还是在做角色信息的传递,毕竟我们的项目中通常做的事情就是对各种各样的角色的信息进行操作,如展示用户信息,修改商品信息等。因此我们在使用的时候一定要时刻提醒自己,尽管我们现在定义的一个JavaBean就是在表示项目中的一个角色,但是,JavaBean的本质含义不是项目中的角色,而是项目中的信息实体,是一个有意义的信息的集合,这个信息的集合有时可以表示一个角色,有时也可以表示其他的有意义的信息。
JavaBean为何物?的更多相关文章
- java web学习总结(二十九) -------------------JavaBean的两种开发模式
SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,一种是JSP+JavaBean模式,一种是Servlet+JSP+JavaBean模式. 一.JSP+JavaBean开发模式 1 ...
- java web学习总结(二十八) -------------------JSP中的JavaBean
一.什么是JavaBean JavaBean是一个遵循特定写法的Java类,它通常具有如下特点: 这个Java类必须具有一个无参的构造函数 属性必须私有化. 私有化的属性必须通过public类型的方法 ...
- JavaBean的用法
JavaBean是一个可重复使用的软件组件,是用Java语言编写的.遵循一定标准的类. JavaBean是Java Web的重要组件,它封装了数据和操作的功能类,供JSP和Servlet调用,完成数据 ...
- JSP复习整理(五)JavaBean使用表单处理数据
一.先建立用户输入的数据 usingGetparameter.html <!DOCTYPE html> <html> <head> <meta charset ...
- JSP复习整理(五)JavaBean生命周期
一.创建一个JavaBean UserBean.java package jsp.test; public class UserBean { private String userName; priv ...
- 初识Jsp,JavaBean,Servlet以及一个简单mvc模式的登录界面
1:JSP JSP的基本语法:指令标识page,include,taglib;page指令标识常用的属性包含Language用来定义要使用的脚本语言:contentType定义JSP字符的编码和页面响 ...
- json、javaBean、xml互转的几种工具介绍
json.javaBean.xml互转的几种工具介绍 转载至:http://blog.csdn.net/sdyy321/article/details/7024236 工作中经常要用到Json.Jav ...
- 由面试引发的思考:B/S与C/S究竟是何物
一.现状说明: 就在这金三银四的求职黄金时期,我有幸作为公司的独立技术面试官,拥有最终决定录用权,在倍受上级领导的充分信任下,我也向上级保证,一定要为公司找到合适的人才,就在我满怀信心的情况下面试了一 ...
- javabean和jsp动作元素
model1就是利用了jsp和javabean 的组合来处理问题.jsp页面如果有太多的逻辑代码的话,维护起来和扩展起来是相当的麻烦的.所以jsp的逻辑代码部分都打包到一种java类当中进行编写.这种 ...
- J2EE基础之JavaBean
J2EE基础之JavaBean 1.什么是JavaBean? JavaBean本质上来说就是一个Java类,它通过封装属性和方法成为具有独立功能.可重复使用的,并可以与其他控件通信的组件对象.通过在J ...
随机推荐
- 一天十道Java面试题----第四天(线程池复用的原理------>spring事务的实现方式原理以及隔离级别)
这里是参考B站上的大佬做的面试题笔记.大家也可以去看视频讲解!!! 文章目录 31.线程池复用的原理 32.spring是什么? 33.对Aop的理解 34.对IOC的理解 35.BeanFactor ...
- HTML基础知识(3)浮动、塌陷问题
1.浮动 1.1 代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> & ...
- MIPI-DSI协议
MIPI联盟,即移动产业处理器接口(Mobile Industry Processor Interface 简称MIPI)联盟.MIPI(移动产业处理器接口)是MIPI联盟发起的为移动应用处理器制定的 ...
- 解决oracle18c没有hr用户
1.查找系统变量ORACLE_HOME的值 2.按照路径寻找sql文件 ORACLE_HOME变量值+demo\schema\human_resources 3.把hr_main.sql脚本文件放在此 ...
- Archlinux + Dwm 配置流程
本着学习C的态度来了解dwm,本身作为一个i3wm的追崇者,与dwm会擦出怎么样的火花呢? 下载安装dwm archlinuxcn源配置 编辑/etc/pacman.conf文件,添加bfsu的arc ...
- 实现将机器A上的程序包复制到机器B并更新的脚本
一.前言 之前有写过如何在单台服务器上执行脚本自动更新程序包,但平时测试过程中相信大部分公司都是需要测试人员在服务器A上进行功能测试,测试通过后再将程序包更新到服务器B上进行安全测试或者性能测试:今天 ...
- JVM运行时数据区域详解
参考文章: <Java Se11 虚拟机规范> <深入理解Java虚拟机-JVM高级特性与最佳实践 第3版>- 周志明 本文基于Java Se 11讲解. 根据<Java ...
- java学习之Servlet
0x00前言 Servlet就是一个接口我们需要写一个类然后去实现Servlet,就可以被服务器识别到.request是用来接受客户端传过来的参数,respone是用来响应客户端的页面.我们所用的容器 ...
- 【网络】内网穿透方案&FRP内网穿透实战(基础版)
目录 前言 方案 方案1:公网 方案2:第三方内网穿透软件 花生壳 cpolar 方案3:云服务器做反向代理 FRP简介 FRP资源 FRP原理 FRP配置教程之SSH 前期准备 服务器配置 下载FR ...
- mybatis中association和collection使用
mybatis中association和collection使用 一.概述 association:一个复杂的类型关联.许多结果将包成这种类型 collection:复杂类型的集合 这2个属性的使用, ...