JavaBean可分为两种:一种是有用户界面(UI,User Interface)的JavaBean;还有一种是没有用户界面,主要负责处理事务(如数据运算,操纵数据库)的JavaBean。JSP通常访问的是后一种JavaBean。
一个JavaBean由3部分组成:
属性(properties)
JavaBean提供了高层次的属性概念,属性在JavaBean中不只是传统的面向对象的概念里的属性,它同时还得到了属性读取和属性写入的API的支持。属性值可以通过调用适当的bean方法进行。比如,可能bean有一个名字属性,这个属性的值可能需要调用String getName()方法读取,而写入属性值可能要需要调用void setName(String str)的方法。
每个JavaBean属性通常都应该遵循简单的方法命名规则,这样应用程序构造器工具和最终用户才能找到JavaBean提供的属性,然后查询或修改属性值,对bean进行操作。JavaBean还可以对属性值的改变作出及时的反应。比如一个显示当前时间的JavaBean,如果改变时钟的时区属性,则时钟会立即重画,显示当前指定时区的时间。
方法(method)
JavaBean中的方法就是通常的Java方法,它可以从其他组件或在脚本环境中调用。默认情况下,所有bean的公有方法都可以被外部调用,但bean一般只会引出其公有方法的一个子集。
由于JavaBean本身是Java对象,调用这个对象的方法是与其交互作用的唯一途径。JavaBean严格遵守面向对象的类设计逻辑,不让外部世界访问其任何字段(没有public字段)。这样,方法调用是接触Bean的唯一途径。
但是和普通类不同的是,对有些Bean来说,采用调用实例方法的低级机制并不是操作和使用Bean的主要途径。公开Bean方法在Bean操作中降为辅助地位,因为两个高级Bean特性--属性和事件是与Bean交互作用的更好方式。
因此Bean可以提供要让客户使用的public方法,但应当认识到,Bean设计人员希望看到绝大部分Bean的功能反映在属性和事件中,而不是在人工调用和各个方法中。
事件(event)
Bean与其他软件组件交流信息的主要方式是发送和接受事件。我们可以将bean的事件支持功能看作是集成电路中的输入输出引脚:工程师将引脚连接在一起组成系统,让组件进行通讯。有些引脚用于输入,有些引脚用于输出,相当于事件模型中的发送事件和接收事件。
事件为JavaBean组件提供了一种发送通知给其他组件的方法。在AWT事件模型中,一个事件源可以注册事件监听器对象。当事件源检测到发生了某种事件时,它将调用事件监听器对象中的一个适当的事件处理方法来处理这个事件。
由此可见,JavaBean确实也是普通的Java对象,只不过它遵循了一些特别的约定而已。
2.2.3 JSF
Java Server Faces(JSF)是一种用于构建WEB应用程序的新标准Java框架。它提供了一种以组件为中心来开发Java Web用户界面的方法,从而简化了开发。Java Server Faces还引起了广大Java/Web开发人员的兴趣.企业开发人员和Web设计人员将发现JSF开发可以简单到只需将用户界面(UI)组件拖放到页面上,而系统开发人员将发现丰富而强健JSF API为他们提供了无语伦比的功能和编程灵活性。JSF还通过将良好构建的模型-视图-控制器设计模式集成到它的体系结构中,确保了应用程序具有更高的可文护性。最后,由于JSF是通过Java Community Process(JSP)开发的一种Java标准,因此开发工具供应商完全能够为Java Server Faces提供易于使用的、高效的可视化开发环境。
使用Java Server Faces Technology创建一个JSP页面时,在服务器的内存中会建立一个组件树,每一个组件标签对应树中的一个UIComponent 实例。该框架使用组件树来粗粒应用程序的请求并创建一个呈现出的相应。当用户生成一个事件时,例如,点击了一个按钮,JSF生命周期即处理该事件并且产生适当的响应。 JAVA办公自动化考勤系统设计+ER图(6):http://www.youerw.com/jisuanji/lunwen_3240.html