问题描述
项目中的数据库, 有两张用户表, admin_user和customer_user, 需要让两个用户表在不同的登录页面登录,请问如何实现
解决方案
我有一个想法,楼主对于一张表的情况肯定是会处理了。而acegi对于dao数据验证的情况其实是通过业务层调用DAO层来完成的。当有一张表时,DAO就直接从这个表中去用户信息了,而你现在其实也是把用户拆分成两类表而已。但是acegi要求的接口是固定。所以,我建议楼主使用一个UserDAOProxy(代理),来充当原来的UserDAO的角色,具体的AdminUserDAO和CustomerUserDAO来操作pojo对象admin_user和customer_user的存取,至于何时存调用AdminUserDAO和CustomerUserDAO,这又是个策略模式了。也就是说楼主要使用设计模式代理和策略模式结合。其实我在想代理是不是用不必要,用适配器模式就足够了。有机会再要好好研究一下!
时间: 2024-11-01 16:22:09