在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()'方法,并注意到相关表的影响。但是,那不是我想了解的一点。 –