<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 495,comments - 227,trackbacks - 0
    import com.duxiu.modules.beetlsql.BeetlSQLDao;
    import org.beetl.sql.core.SQLManager;
    import org.springframework.beans.BeansException;
    import org.springframework.beans.factory.support.DefaultListableBeanFactory;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.ApplicationContextAware;
    import org.springframework.context.ConfigurableApplicationContext;
    import org.springframework.core.io.Resource;
    import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
    import org.springframework.core.io.support.ResourcePatternResolver;

    import java.io.IOException;
    import java.util.Objects;
    import java.util.stream.Stream;

    public class DaoFactoryBean implements ApplicationContextAware {
        
        
        @Override
        
    public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
            
            ConfigurableApplicationContext context 
    = (ConfigurableApplicationContext) applicationContext;
            DefaultListableBeanFactory beanFactory 
    = (DefaultListableBeanFactory) context.getBeanFactory();
            ResourcePatternResolver rpr 
    = new PathMatchingResourcePatternResolver(applicationContext);
            SQLManager sqlManager 
    = applicationContext.getBean(SQLManager.class);
            
    try {
                Resource[] resources 
    = rpr.getResources("classpath:com/duxiu/**/*.class");
                Stream.of(resources).map(f 
    -> {
                    
    try {
                        
    return f.getURI().getPath().split("(classes/)|(!/)")[1].replace("/"".").replace(".class""");
                    } 
    catch (IOException e) {
                        e.printStackTrace();
                        
    return null;
                    }
                }).filter(Objects::nonNull).forEach(f 
    -> {
                    
    try {
                        Class
    <?> aClass = Class.forName(f);
                        
    boolean match = Stream.of(aClass.getAnnotations()).anyMatch(c -> c instanceof BeetlSQLDao);
                        
    if (match && !beanFactory.containsBean(aClass.getSimpleName())) {
                            System.out.println(sqlManager.getMapper(aClass));
                            
    //beanFactory.registerSingleton(aClass.getSimpleName(),sqlManager.getMapper(aClass));
                        }
                    } 
    catch (ClassNotFoundException e) {
                        e.printStackTrace();
                    }
                });
            } 
    catch (IOException e) {
                e.printStackTrace();
            }
            System.out.println(applicationContext.getBean(SQLManager.
    class));
            
    /*if(!beanFactory.containsBean(beanName)){
                BeanDefinitionBuilder beanDefinitionBuilder= BeanDefinitionBuilder.rootBeanDefinition(beanClass);
                beanDefinitionBuilder.addPropertyValue("host", host);
                beanDefinitionBuilder.addPropertyValue("port", port);
                beanDefinitionBuilder.addPropertyValue("database", database);
                beanDefinitionBuilder.setInitMethodName("init");
                beanDefinitionBuilder.setDestroyMethodName("destroy");
                beanFactory.registerBeanDefinition(beanName, beanDefinitionBuilder.getBeanDefinition());
                logger.info("Add {} to bean container.", beanName);
            }
    */
        }
    }
    posted on 2016-03-23 10:47 SIMONE 閱讀(1722) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲av无码专区在线观看亚| 亚洲欧美成人综合久久久| 超清首页国产亚洲丝袜| 日韩va亚洲va欧洲va国产| 久久亚洲精品成人av无码网站| 亚洲国产中文在线二区三区免| 亚洲AV无码一区二区一二区| 在线播放高清国语自产拍免费 | 偷自拍亚洲视频在线观看| 四虎国产精品免费永久在线| 精品成在人线AV无码免费看 | 四虎永久在线精品视频免费观看| 亚洲欭美日韩颜射在线二| 亚洲伊人久久大香线蕉在观| 色播精品免费小视频| 久久久久国产成人精品亚洲午夜 | 久久精品亚洲视频| 男女猛烈xx00免费视频试看| 免费a级毛片大学生免费观看| 亚洲区精品久久一区二区三区| 免费看成人AA片无码视频羞羞网| 国产精品亚洲一区二区三区在线 | 亚洲动漫精品无码av天堂| 色欲色香天天天综合网站免费| 国产精品免费看久久久久| 亚洲精品免费在线视频| 华人在线精品免费观看| 亚洲国产一级在线观看 | 亚洲第一永久在线观看| 日韩一区二区a片免费观看| 香蕉视频在线观看亚洲| 美女网站在线观看视频免费的 | 亚洲国产区男人本色| 无码日韩精品一区二区免费| 亚洲综合色丁香麻豆| 韩国免费三片在线视频| 亚洲中文字幕无码中文| 久久午夜夜伦鲁鲁片免费无码影视| 亚洲三区在线观看无套内射| 9420免费高清在线视频| 亚洲AV永久纯肉无码精品动漫|