Java简单实现AOP,Java通用异常拦截,Java与Lamada

直接看代码不废话。不懂Lamada直接百度。。。

package test;
/**
 * QQ:1448376744
 * @author 花间岛
 *
 */
//控制器
public class Control {
    //服务器
    public static void main(String[] args) throws Exception {
        boolean result = Handle.process(()->new Control().login("admin", "1024"));
        System.out.println(result);
    }
    //Action
    public boolean login(String username,String password) {
        if("admin".equals(username)&&"1024".equals(password))
            return true;
        return false;
    }
}
//委托接口
interface  Action<TResult>{
    public TResult inwork();
}
//通用处理器:AOP
class Handle{
    public static <T> T process(Action<T> action) {
        T value=null;
        try {
            //1:系统及业务逻辑
            
            value = action.inwork();//2:主业务逻辑
            
            //3:系统及业务逻辑
        } catch(Exception e){
            //1:异常处理业务逻辑
            //2:日志记录
        }
        return value;
    }
}
原文地址:https://www.cnblogs.com/chaeyeon/p/8995266.html