在Liferay API中,我觀察到UserLocalServiceUtil.addRoleUser(long roleId, long userId)
和RoleLocalServiceUtil.addUserRole(long userId, long roleId)
可通過兩種不同的服務用於相同的目的,即將角色分配給用戶。糾正我我錯了!UserLocalServiceUtil.addRoleUser和RoleLocalServiceUtil.addUserRole有什麼區別嗎?
進一步挖掘深進入實施揭示以下的層級:
UserLocalServiceUtil.addRoleUser > UserLocalServiceBaseImpl.addRoleUser >
RolePersistenceImpl.addUser > TableMapperImpl.addTableMapping (roleToUserTableMapper)
雖然,(接受兩個參數long roleId
,long userId
方法)
RoleLocalServiceUtil.addUserRole > RoleLocalServiceBaseImpl.addUserRole >
UserPersistenceImpl.addRole > TableMapperImpl.addTableMapping (userToRoleTableMapper)
(方法接受兩個參數long userId
, long roleId
)
我注意到兩個實現最終都在添加了roleId
和userId
之間的映射,反之亦然。
不過,我有以下擔憂:
- 執行這兩個API導致相同的,那就是用戶分配的角色呢?
a。如果是,那麼爲什麼這種服務重複/重複?
b。如果不是,那有什麼區別? - 哪一個在性能和可訪問性方面更好?
- 哪一個結果運行時,沒有重啓服務器?
我也觀察到'afterPropertiesSet()'方法,並注意到相關表的影響。但是,那不是我想了解的一點。 –