zoukankan      html  css  js  c++  java
  • Java Web开发 之JavaBean整理

    JavaBean是一种Java组件技术,就其本质就是一个类,具有如下特点:
    1:实现可序列化
    2:有一个public的无参的构造方法
    3:所有实例变量都是private的
    4:为每一个属性提供getter和setter方法,如果属性为boolean类型,那么get变换成is,如:getNew() 变成 isNew()
    5:建议覆盖实现hashCode、equals、toString方法

    JavaBean组件在Web开发上的标准用途,主要就是封装数据,并维护这些数据
    但在实际的开发中,通常把JavaBean组件做为一个封装数据的组件,而把维护数据的工作后移,放到逻辑层和数据层去

    JavaBean组件不是EJB组件,他们没有任何的关系




      JavaBean类型有以下三种:1、简单属性的JavaBean;2、绑定属性的JavaBean;3、约束属性的JavaBean。

      JavaBean是组成软件最小单位的组件。

      JavaBean的规范:

      1、JavaBean必须包含一个无参数的Public构造方法;

      2、JavaBean必须包含符合命名规范的get和set方法;

      3、JavaBean应该是可序列化的,实现Serializable接口;

      4、必须支持内省;

      5、如果Bean有运行时外观,就必须扩展java.awt.ComPonent类;

      反射就是可以通过名称来得到一个对象(类、属性、方法)的技术。它的优点主要是:灵活,有扩展性。

      反射的作用:

      1、判断某个对象所属的类型;

      2、取得类型(Class)的属性、方法、构造体和父类的相关信息;

      3、找出接口中的常量和方法定义;

      4、为一个执行期才得知名称的类产生对象(即动态创建对象);

      使用反射的三个步骤:1、得到类模板 2、得到类所有的属性、方法、构造方法 3、产生对象、执行方法。(其中产生对象是通过newIntence;执行方法通过invoke)。











    JavaBean命名规范



    (1)JavaBean 类必须是一个公共类,并将其访问属性设置为 public ,如: public class user{......}
    (2)JavaBean 类必须有一个空的构造函数:类中必须有一个不带参数的公用构造器

    (3)一个javaBean类不应有公共实例变量,类变量都为private ,如: private int id;
    (4)属性应该通过一组存取方法(getXxx 和 setXxx)来访问,一般是IDE(Eclipse、JBuilder) 为属性生成getter/setter 方法

    一般JavaBean属性以小写字母开头,驼峰命名格式,相应的 getter/setter 方法是 get/set 接上首字母大写的属性名。例如:属性名为userName,其对应的getter/setter 方法是 getUserName/setUserName。

    但是,还有一些特殊情况:

    1、如果属性名的第二个字母大写,那么该属性名直接用作 getter/setter 方法中 get/set 的后部分,就是说大小写不变。例如属性名为uName,方法是getuName/setuName。

    2、如果前两个字母是大写(一般的专有名词和缩略词都会大写),也是属性名直接用作 getter/setter 方法中 get/set 的后部分。例如属性名为URL,方法是getURL/setURL。

    3、如果首字母大写,也是属性名直接用作 getter/setter 方法中 get/set 的后部分。例如属性名为Name,方法是getName/setName,这种是最糟糕的情况,会找不到属性出错,因为默认的属性名是name。

    所以在JavaBean命名时应该注意符合以上命名规范。

    附下表,看看吧:

    ————————————————————————————————————————————————————————

    属性名/类型 | getter 方法 | setter 方法

    ————————————|——————————————————|——————————————————————————
    xcoordinate/Double | public Double getXcoordinate() | public void setXcoordinate(Double newValue)

    ————————————|——————————————————|——————————————————————————
    xCoordinate/Double | public Double getxCoordinate() |public void setxCoordinate(Double newValue)

    ————————————|——————————————————|——————————————————————————
    XCoordinate/Double |public Double getXCoordinate() | public void setXCoordinate(Double newValue)

    ————————————|——————————————————|——————————————————————————
    Xcoordinate/Double |不允许 | 不允许

    ————————————|——————————————————|——————————————————————————
  • 相关阅读:
    简述 JPA 与 Spring Data JPA 与 Hibernate
    idea不识别yml配置文件,怎么办?
    Java 数组如何转成List集合
    git关于 LF 与 CRLF
    git报错:src refspec master does not match any
    蓝桥杯- 基础练习:十六进制转八进制
    蓝桥杯- 基础练习:数列排序
    蓝桥杯-入门训练 :A+B问题
    蓝桥杯-入门训练 :序列求和
    蓝桥杯-入门训练 :圆的面积
  • 原文地址:https://www.cnblogs.com/wenlj/p/4630136.html
Copyright © 2011-2022 走看看