2011-06-30 54 views
0

我使用Liferay門戶6人壽雷User對象,請告訴我爲什麼,而不是使用自定義的Bean爲什麼,而不是使用自定義的Bean

public class UserBean { 

private String firstName; 
private String lastName; 
private String middleName; 
private long userId; 
private String screenName; 
} 


The way we are getting User from Liferay 
User userObj = UserLocalServiceUtil.getUserById(userId); 

BeanUtils.copyProperties(的UserBean,userObj)生命雷User對象;

我新的Liferay門戶的特性,所以請原諒,如果我的問題是愚蠢的

我的問題是,如果我有我的用戶對象(的UserBean),那麼爲什麼我們需要可以訪問到Liferay用戶?

+0

由於標籤liferay-6只有34個問題,我懷疑你會得到很多回應。 –

+0

我的問題是:爲什麼你需要一個自定義bean,如果你只能訪問Liferay User對象?請向我們解釋你的用例是什麼,並且在這個過程中關注你的關鍵。 –

回答

0

好問題。你在用Liferay用戶做什麼?你的用戶是否存儲在Liferay以外的其他地方?你是否維護兩組用戶,一組在Liferay中,另一組在其他地方? BeanUtils.getProperties()使用反射,所以你可能想要考慮一種不同的方法來適應,而不管它爲什麼被完成。

我正在嘗試閱讀各行,並弄清楚爲什麼你會想要做這樣的事情。你能把情景放在我的背景下嗎?原諒我是無知的,但只有理由我可以想出的是,你希望能夠在多個門戶平臺上部署你的代碼。這是一個準確的評估?

如果這是一個準確的評估,那麼我可以看到包裝Liferay用戶對象,你可能會想採用適配器模式。否則,如果Liferay User對象已經擁有了放在UserBean類中的字段和方法,我不確定爲什麼要包裝它。

如果用例沒有部署到多個門戶平臺,您能分享一下用例嗎?我很難找到一個理由,希望將Liferay用戶包裝在您自己的UserBean類中。其實,我只能想出你不應該那樣做的原因。我可以看到你可能擔心你的公司將在未來的某個時間切換平臺。這是一個合理的問題,但它是不確定的。對不確定的未來需求進行編碼和設計意味着將資源花費在可能不需要的東西上的風險。

相關問題