快速业务通道

让Spring架构减化事务配置 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-18
available to subclasses */   protected final Log logger = LogFactory.getLog(getClass());   /**//** ApplicationContext this object runs in */   private ApplicationContext applicationContext;   /**//** MessageSourceAccessor for easy message access */   private MessageSourceAccessor messageSourceAccessor;   /**//**被代理的bean别名列表**/   private List beanNames;   /**//**被代理的classType列表**/   private List classTypes;   //---------------------------------------------------------   //实现AbstractAutoProxyCreator的抽像方法   //---------------------------------------------------------   /**//**    * @see org.springframework.aop.framework.autoproxy.AbstractAutoProxyCreator#getAdvicesAndAdvisorsForBean(java.lang.Class,    *   java.lang.String, org.springframework.aop.TargetSource)    */   protected Object[] getAdvicesAndAdvisorsForBean(Class beanClass,       String beanName, TargetSource targetSource) throws BeansException ...{     if (this.beanNames != null) ...{       if (this.beanNames.contains(beanName)) ...{         return PROXY_WITHOUT_ADDITIONAL_INTERCEPTORS;       }     }     return DO_NOT_PROXY;   }   //-------------------------------------------------------   //实现ApplicationContextAware接口方法   //-------------------------------------------------------   /**//**    * @see org.springframework.context.ApplicationContextAware#setApplicationContext(org.springframework.context.ApplicationContext)    */   public void setApplicationContext(ApplicationContext context)       throws BeansException ...{     if (context == null && !isContextRequired()) ...{       // Reset internal context state.       this.applicationContext = null;       this.messageSourceAccessor = null;     } else if (this.applicationContext == null) ...{       // Initialize with passed-in context.       if (!requiredContextClass().isInstance(context)) ...{         throw new ApplicationContextException(             "Invalid application context: needs to be of type ["                 + requiredContextClass().getName() + "]");       }       this.applicationContext = context;       this.messageSourceAccessor = new MessageSourceAccessor(context);       initApplicationContext();     } else ...{       // Ignore reinitialization if same context passed in.       if (this.applicationContext != context) ...{         throw new ApplicationContextException(             "Cannot reinitialize with different application context: current one is ["                 + this.applicationContext                 + "], passed-in one is [" + context + "]");       }     }   }   /**//**    * Determine whether this application object needs to run in an    * ApplicationContext.

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号