第一個(gè)設(shè)計(jì)模式非常簡(jiǎn)單。一個(gè)公司和雇員的Entity Bean和下面給出的Entity Bean的代碼片斷是類似的。它們是由jbuilder4的EntityBean模版生成的。所有的字段都聲明為public的cmp字段。
Code snippet for Company Entity Bean
public class CompanyBean implements EntityBean {
EntityContext entityContext;
public Integer comId; //the primary key
public String comName; //the company name
public String comDescription //basic description
public Timestamp mutationDate //explained later
public Integer ejbCreate() throws
CreateException {
return null;
}
//various get() and set() for every column/field
// which are exposed in the Remote Interface as well Code snippet for Employee Entity Bean
public class EmployeeBean implements EntityBean {
EntityContext entityContext;
public Integer empId; //the primary key
public Integer comId; //the company foreign key
public String empFirstName; //the employee firstname
public String empLastName; // the employee lastname
public Timestamp mutationDate; //explained later
public Integer ejbCreate() throws
CreateException {
return null;
}
//various get() and set() for every column/field
// which are exposed in the Remote Interface as well
這個(gè)設(shè)計(jì)模式雖然很簡(jiǎn)單,但是卻有很多缺點(diǎn),比如,對(duì)每一個(gè)字段的訪問都會(huì)導(dǎo)致對(duì)get()和set()方法的一次遠(yuǎn)程調(diào)用。而遠(yuǎn)程過程調(diào)用(RPCs)是非常耗費(fèi)資源的,并且,對(duì)于在實(shí)際中通常要求的組合的訪問會(huì)導(dǎo)致一系列的遠(yuǎn)程調(diào)用。可以說,這個(gè)模式在實(shí)際中可用性很差。上面展示的設(shè)計(jì)模式可以作為其他設(shè)計(jì)模式的基礎(chǔ),比如RAD,原型設(shè)計(jì),測(cè)試等。這時(shí),那個(gè)代表雇員的Employee Entity Bean并沒有展示出在雇員和公司之間有何關(guān)系。
Code snippet for Company Entity Bean
public class CompanyBean implements EntityBean {
EntityContext entityContext;
public Integer comId; //the primary key
public String comName; //the company name
public String comDescription //basic description
public Timestamp mutationDate //explained later
public Integer ejbCreate(
CreateException {
return null;
}
//various get() and set() for every column/field
// which are exposed in the Remote Interface as well Code snippet for Employee Entity Bean
public class EmployeeBean implements EntityBean {
EntityContext entityContext;
public Integer empId; //the primary key
public Integer comId; //the company foreign key
public String empFirstName; //the employee firstname
public String empLastName; // the employee lastname
public Timestamp mutationDate; //explained later
public Integer ejbCreate(
CreateException {
return null;
}
//various get() and set() for every column/field
// which are exposed in the Remote Interface as well
這個(gè)設(shè)計(jì)模式雖然很簡(jiǎn)單,但是卻有很多缺點(diǎn),比如,對(duì)每一個(gè)字段的訪問都會(huì)導(dǎo)致對(duì)get()和set()方法的一次遠(yuǎn)程調(diào)用。而遠(yuǎn)程過程調(diào)用(RPCs)是非常耗費(fèi)資源的,并且,對(duì)于在實(shí)際中通常要求的組合的訪問會(huì)導(dǎo)致一系列的遠(yuǎn)程調(diào)用。可以說,這個(gè)模式在實(shí)際中可用性很差。上面展示的設(shè)計(jì)模式可以作為其他設(shè)計(jì)模式的基礎(chǔ),比如RAD,原型設(shè)計(jì),測(cè)試等。這時(shí),那個(gè)代表雇員的Employee Entity Bean并沒有展示出在雇員和公司之間有何關(guān)系。