67,549
社区成员




public interface UserDAO {
public void find();
}
class UserDAOOracleImpl implements UserDAO {
public void find()..
}
class UserDAOMysqlImpl implements UserDAO {
public void find()..
}
public class DaoProxy implements InvocationHandler {
private Object oracleDaoImpl;
private Object mysqlDaoImpl;
public DaoCacheProxy(Object oracleDaoImpl, Object mysqlDaoImpl) {
this.oracleDaoImpl= oracleDaoImpl;
this.mysqlDaoImpl= mysqlDaoImpl;
}
@Override
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
Object result = method.invoke(mysqlDaoImpl, args);
if (result == null) {
result = method.invoke(oracleDaoImpl, args);
}
return result;
}
}