当前位置: 首页 > news >正文

javabean总结

一、 javabean 是什么?

Bean的中文含义是“豆子”,顾名思义,JavaBean是指一段特殊的Java类,

就是有默然构造方法,仅仅有get,set的方法的java类的对象.

 

专业点解释是:

JavaBean定义了一组规则
JavaBean就是遵循此规则的寻常的Java对象 

 

满足这三个条件: 
   1.运行java.io.Serializable 接口
 2.提供无參数的构造器
  3.提供getter 和 setter方法訪问它的属性.

 

简单地说,JavaBean是用Java语言描写叙述的软件组件模型,事实上际上是一个类。这些类遵循一个接口格式,以便于使函数命名、底层行为以及继承或实现的行为,能够把类看作标准的JavaBean组件进行构造和应用。

JavaBean一般分为可视化组件和非可视化组件两种。可视化组件能够是简单的GUI元素,如button或文本框,也能够是复杂的,如报表组件;非可视化组件没有GUI表现形式,用于封装业务逻辑、数据库操作等。其最大的长处在于能够实现代码的可重用性。JavaBean又同一时候具有下面特性。

*     易于维护、使用、编写。

*     可实现代码的重用性。

*     可移植性强,但仅限于Java工作平台。

*     便于传输,不限于本地还是网络。

*     能够以其它部件的模式进行工作。

对于有过其它语言编程经验的读者,能够将其看作相似微软的ActiveX的编程组件。可是差别在于JavaBean是跨平台的,而ActiveX组件则仅局限于Windows系统。总之,JavaBean比較适合于那些须要跨平台的、并具有可视化操作和定制特性的软件组件。

 

JavaBean组件与EJB(Enterprise JavaBean,企业级JavaBean)组件全然不同。EJB 是J2EE的核心,是一个用来创建分布式应用、server端以及基于Java应用的功能强大的组件模型。JavaBean组件主要用于存储状态信息,而EJB组件能够存储业务逻辑。

2  使用JavaBean的原因

程序中往往有反复使用的段落,JavaBean就是为了可以反复使用而设计的程序段落,并且这些段落并不仅仅服务于某一个程序,并且每一个JavaBean都具有特定功能,当须要这个功能的时候就行调用对应的JavaBean。从这个意义上来讲,JavaBean大大简化了程序的设计过程,也方便了其它程序的反复使用。

JavaBean传统应用于可视化领域,如AWT(窗体工具集)下的应用。而如今,JavaBean很多其它地应用于非可视化领域,同一时候,JavaBean在server端的应用也表现出强大的优势。非可视化的JavaBean能够非常好地实现业务逻辑、控制逻辑和显示页面的分离,如今多用于后台处理,使得系统具有更好的健壮性和灵活性。JSP + JavaBean和JSP + JavaBean + Servlet成为当前开发Web应用的主流模式。

3  JavaBean的开发

在程序设计的过程中,JavaBean不是独立的。为了可以更好地封装事务逻辑、数据库操作而便于实现业务逻辑和前台程序的分离,操作的过程往往是先开发须要的JavaBean,再在适当的时候进行调用。但一个完整有效的JavaBean必定会包括一个属性,伴随若干个get/set(仅仅读/仅仅写)函数的变量来设计和执行的。JavaBean作为一个特殊的类,具有自己独有的特性。应该注意下面3个方面。

*     JavaBean类必须有一个没有參数的构造函数。

*     JavaBean类全部的属性最好定义为私有的。

*     JavaBean类中定义函数setXxx() 和getXxx()来对属性进行操作。当中Xxx是首字母大写的私有变量名称。



相关文章:

  • Css布局系列-经典三列布局
  • msyql查表报InnoDB错误
  • Nodejs使用TLS
  • Overview
  • puppet注意事项
  • LAMP搭建小结
  • 【AngularJS】—— 5 表单
  • 用显微镜观察cpu芯片内部
  • 怎样获取android手机联系人并按字母展示(三)
  • C/C++产生随机数
  • Linux对文件归档和压缩(学习笔记八)
  • PLSQL转义字符
  • vim 入门
  • 【转】Android项目中编译 C的模块
  • 【SICP练习】93 练习2.66
  • CentOS 7 修改主机名
  • create-react-app做的留言板
  • CSS 专业技巧
  • C语言笔记(第一章:C语言编程)
  • JavaScript 奇技淫巧
  • JavaScript类型识别
  • Java读取Properties文件的六种方法
  • Java精华积累:初学者都应该搞懂的问题
  • js面向对象
  • MD5加密原理解析及OC版原理实现
  • PHP变量
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 一起来学SpringBoot | 第十篇:使用Spring Cache集成Redis
  • 在Docker Swarm上部署Apache Storm:第1部分
  • 在Unity中实现一个简单的消息管理器
  • 白色的风信子
  • ​软考-高级-信息系统项目管理师教程 第四版【第23章-组织通用管理-思维导图】​
  • # 数据结构
  • $.ajax()方法详解
  • (C语言)逆序输出字符串
  • (八十八)VFL语言初步 - 实现布局
  • (二)Eureka服务搭建,服务注册,服务发现
  • (二)PySpark3:SparkSQL编程
  • (附源码)springboot教学评价 毕业设计 641310
  • (力扣)循环队列的实现与详解(C语言)
  • (转贴)用VML开发工作流设计器 UCML.NET工作流管理系统
  • .[hudsonL@cock.li].mkp勒索病毒数据怎么处理|数据解密恢复
  • .“空心村”成因分析及解决对策122344
  • .describe() python_Python-Win32com-Excel
  • .gitignore文件设置了忽略但不生效
  • .htaccess配置重写url引擎
  • .NET CORE Aws S3 使用
  • .NET Core6.0 MVC+layui+SqlSugar 简单增删改查
  • :如何用SQL脚本保存存储过程返回的结果集
  • @autowired注解作用_Spring Boot进阶教程——注解大全(建议收藏!)
  • @RequestParam详解
  • @开发者,一文搞懂什么是 C# 计时器!
  • [AIGC] Nacos:一个简单 yet powerful 的配置中心和服务注册中心
  • [Arduino学习] ESP8266读取DHT11数字温湿度传感器数据
  • [AutoSar NVM] 存储架构