MyBeanPostProcessor実装BeanPostProcessor {クラス公開
@Override
パブリックpostProcessBeforeInitializationオブジェクト(豆、のbeanName文字列オブジェクト)BeansException {スロー
//System.out.println( "第5ステップ:初期化方法の前に...");
Beanを返します;
}
@Override
パブリックオブジェクトpostProcessAfterInitialization(最終オブジェクト・ビーン、文字列のbeanName)がBeansException {スロー
//System.out.println( "第八步:初始化后方法を...")。
IF( "userDao" .equals(のbeanName)){
オブジェクトプロキシ=たとえば、Proxy.newProxyInstance(bean.getClass()のgetClassLoader()、bean.getClass()でgetInterfaces()、新規のInvocationHandler(){
@Override
パブリックオブジェクト呼び出し(オブジェクトプロキシ、メソッド方法は、スロー)[]引数オブジェクトのThrowable {
IF( "保存" .equals(method.getName())){
するSystem.out.println( "权限校验========== ========= ");
戻りmethod.invoke(豆、引数);
}
method.invoke(豆、引数)を返します。
}
})。
プロキシを返します。
}他{
豆を返します。
}
}
}