<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)  編輯  收藏

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


    網站導航:
     
    主站蜘蛛池模板: 国产成人精品日本亚洲专| 午夜亚洲www湿好大| ASS亚洲熟妇毛茸茸PICS| 亚洲免费视频播放| 亚洲国产精品乱码在线观看97| 99在线热视频只有精品免费| 亚洲AV无码成人专区片在线观看| 免费视频精品一区二区三区| 亚洲图片一区二区| 免费看片在线观看| 亚洲中文字幕无码av| 日韩中文无码有码免费视频| 美女尿口扒开图片免费| 中文字幕亚洲无线码| 成人久久免费网站| 亚洲成aⅴ人片在线观| 午夜网站免费版在线观看| 国产精品亚洲色图| 亚洲色成人中文字幕网站| 久久中文字幕免费视频| 亚洲H在线播放在线观看H| 国产精品成人四虎免费视频| 精品乱子伦一区二区三区高清免费播放| 亚洲宅男天堂在线观看无病毒| 久久久久高潮毛片免费全部播放 | 国产高清对白在线观看免费91 | 亚洲网站在线播放| 最近2019中文字幕mv免费看| 色屁屁在线观看视频免费| 亚洲AV综合色区无码另类小说| 2019中文字幕免费电影在线播放| 亚洲最大的成人网| 亚洲无av在线中文字幕| 在线观看特色大片免费视频| 老妇激情毛片免费| 亚洲一区二区三区日本久久九| 日韩中文无码有码免费视频| 日本视频免费高清一本18| 亚洲欧美日韩中文二区| 亚洲第一AAAAA片| 在线观看免费亚洲|