JeeComponentsBeanFactoryPostProcessor.java 文件源码

java
阅读 37 收藏 0 点赞 0 评论 0

项目:spring-boot-jee-web-example 作者:
private void registerJeeComponents(ConfigurableListableBeanFactory beanFactory, ClassLoader cl,
        Set<BeanDefinition> candiates) {

    for (BeanDefinition bd : candiates) {

        try {
            Class<?> beanClass = ClassUtils.forName(bd.getBeanClassName(), cl);
            WebServlet webServlet = beanClass.getDeclaredAnnotation(WebServlet.class);
            WebFilter webFilter = beanClass.getDeclaredAnnotation(WebFilter.class);
            WebListener webListener = beanClass.getDeclaredAnnotation(WebListener.class);

            DefaultListableBeanFactory targetBeanFactory = (DefaultListableBeanFactory) beanFactory;

            if (webServlet != null) {
                createAndRegisterServletBean(targetBeanFactory, bd, beanClass, webServlet);
            } else if (webFilter != null) {
                createAndRegisterServletFilterBean(targetBeanFactory, bd, beanClass, webFilter);
            } else if (webListener != null) {
                createAndRegisterWebListenerBean(targetBeanFactory, bd, beanClass, webListener);
            }

        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号