public interface IBusinessObject<PK extends Serializable> extends Serializable {
PK getPrimaryKey();
void setPrimaryKey(PK id);
}
鍦ㄦ垜鐨勫瓙綾諱腑鏄繖涔堝疄鐜扮殑
public class Code implements IBusinessObject<Long>{
private Long primaryKey;
public void setPrimaryKey(Long id){
this.primaryKey=id;
}
public Long getPrimaryKey(){
return primaryKey
}
}
鍦ㄩ氬父鐨勫疄渚嬪寲榪囩▼涓紝鏄笉浼氬瓨鍦ㄩ棶棰樼殑銆傚綋鏃剁殑闂鏄紝鎴戝畾涔変簡鍙﹀涓涓被錛岀敤浜庡紩鐢–ode
public class TestBean {
private Code code;
public void setCode(){
}
public Code getCode(){
}
}
褰撳湪spring鐜涓椂錛屼嬌鐢╯pring鐨刡ind綾誨鐞嗙殑鏃跺欙紝鍙戠幇錛屾垜鐨刢ode.primaryKey鐨勭被鍨嬪眳鐒朵負Serializable,鑰屼笉鏄垜鎯寵鐨凩ong
褰撴椂浠ヤ負鍏朵粬鍦版柟鎼為敊浜嗭紝鍐欎簡涓畝鍗曠殑嫻嬭瘯浠g爜
TestBean b=new TextBean();
BeanWrapperImpl wrapper=new BeanWrapperImpl(b);
b.setPropertyValue("code.primaryKey","1");
assertTrue(b.getCode().getPrimaryKey() instanceof Long);
灞呯劧鏄け璐ョ殑銆?br>鍙湁鍦?br>
b.setPropertyValue("code.primaryKey",new Long(1));
assertTrue(b.getCode().getPrimaryKey() instanceof Long);
鎵嶆垚鍔熴?br>浠旂粏璺熻釜錛屽彂鐜板師鏉ワ紝娉涘瀷鐨勬椂鍊欙紝浜х敓鐨勭紪璇戠被涓紝鏈変袱涓悓鍚嶇殑鏂規硶
public void setPrimaryKey(Long id){
this.primaryKey=id;
}
public Long getPrimaryKey(){
return primaryKey
}
鍜?br> public void setPrimaryKey(Serializable id){
this.primaryKey=id;
}
public Serializable getPrimaryKey(){
return primaryKey
}
鑰宩ava.beans瑙勮寖瀵逛簬榪欑鎯呭喌鏄病鏈夊姙娉曞垎娓呮錛屾墍浠ヤ篃灝卞鑷翠簡緇撴灉鍜岄鏈熺殑涓嶅悓銆?br>濡傛灉鏄湪紼嬪簭涓紝榪欑偣綆椾笉浜嗛棶棰樸傚彲鏄垜闇瑕佸湪web鐨勯〉闈笂榪涜鍊肩殑緇戝畾錛岃岃緭鍏ョ殑涓滆タ錛屽彧鑳戒負瀛楃涓層傛墍浠ヤ笉鍙兘鍑烘潵Long綾誨瀷銆?br>鐩墠錛岄噰鐢ㄤ簡涓縐嶆瘮杈冨偦鐨勫姙娉曪紝鍦═estBean涓鍔犱簡涓涓復鏃跺彉閲弜錛岄氳繃x鍚慶ode浼犲?br>濡備笅錛?br>
public void setWsCode(String wsCode) {
this.wsCode = wsCode;
if (StringUtils.isNumeric(wsCode))
this.code.setPrimaryKey(NumberUtils.toLong(wsCode));
}
涓嶇煡閬撹繕鏈夋病鏈夊叾浠栧ソ鐨勮В鍐蟲柟妗堛?br>

]]>