public interface UserInfo{
public void queryUser ();
public void updateUser ();
}
public class UserImpl implementsUserInfo{
@Override
public void queryUser() {
//查询方法略...
}
@Override
public void updateUser() {
//修改方法略...
}
}
public class UserProxy implementsUserInfo{
private UserInfo userImpl;
public AccountProxy(UserInfo userImpl) {
this.userImpl = userImpl;
}
@Override
public void queryUser() {
//这里可以扩展,增加一些查询之前需要执行的方法
//查询方法略...
//这里可以扩展,增加一些查询之后需要执行的方法
}
@Override
public void updateUser() {
//这里可以扩展,增加一些修改之前需要执行的方法
//修改方法略...
//这里可以扩展,增加一些修改之后需要执行的方法
}
}
public class Test {
public static void main(String[] args) {
UserInfo userImpl = new UserImpl();
UserInfo userProxy = new UserProxy(userImpl);
userProxy.queryUser();
userProxy.updateUser();
}
}
public interface UserInfo{
public void queryUser ();
public void updateUser ();
}
public class UserImpl implementsUserInfo{
@Override
public void queryUser() {
//查询方法略...
}
@Override
public void updateUser() {
//修改方法略...
}
}
public class UserHandler implementsInvocationHandler{
privateUserInfo userImpl;
publicUserHandler(UserInfo userImpl2){
this.userImpl= userImpl2;
}
@Override
publicObject invoke(Object proxy, Method method, Object[] args)
throws Throwable {
Objectobject = null;
//方法开始前做一些事情
if (method.getName().equals("queryUser")) {
object = method.invoke(userImpl, args);
//激活调用的方法
}
//方法结束后做一些事情
return object;
}
}
public class Test {
public static void main(String[] args) {
UserInfouserImpl =new UserImpl();
UserHandlerhandler = new UserHandler(userImpl);
UserInfouserProxy = (UserInfo)Proxy.newProxyInstance
(ClassLoader.getSystemClassLoader(),
newClass[]{UserInfo.class}, handler);
userProxy.queryUser();
}
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有