com.changhong.oto.common.utils.cache.SpringUtils.java Source code

Java tutorial

Introduction

Here is the source code for com.changhong.oto.common.utils.cache.SpringUtils.java

Source

/**
 * Copyright (c) 2005-2012 https://github.com/zhangkaitao
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 */
package com.changhong.oto.common.utils.cache;

import org.springframework.beans.BeansException;
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.beans.factory.config.BeanFactoryPostProcessor;
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;

/**
 * 
 *   ??SpringUtils
 *   ??spring
 *   
 *   20161110?9:52:55
 *   
 *   
 *   
 */
public final class SpringUtils implements BeanFactoryPostProcessor {

    /*
     * 
     */
    private static ConfigurableListableBeanFactory beanFactory; // Spring

    @Override
    public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {
        SpringUtils.beanFactory = beanFactory;
    }

    /**
     * 
     *   ??getBean
     *   @param name
     *   @return
     *   @throws BeansException
     *   T
     *   ?beanname?
     *   
     *    20161110?9:55:13
     *   
     *   
     */
    @SuppressWarnings("unchecked")
    public static <T> T getBean(String name) throws BeansException {
        return (T) beanFactory.getBean(name);
    }

    /**
     * 
     *   ??getBean
     *   @param clz
     *   @return
     *   @throws BeansException
     *   T
     *   ?beanclassUser.class?
     *   
     *    20161110?9:55:51
     *   
     *   
     */
    public static <T> T getBean(Class<T> clz) throws BeansException {
        T result = (T) beanFactory.getBean(clz);
        return result;
    }

    /**
     * 
     *   ??containsBean
     *   @param name
     *   @return
     *   boolean
     *   ?beanname??bean
     *   
     *    20161110?9:57:08
     *   
     *   
     */
    public static boolean containsBean(String name) {
        return beanFactory.containsBean(name);
    }

    /** 
     *   ??isSingleton
     *   @param name
     *   @return
     *   @throws NoSuchBeanDefinitionException
     *   boolean
     *    ??beansingletonprototype 
     *        ??beanNoSuchBeanDefinitionException
     *   
     *    20161110?9:58:25
     *   
     *   
     */
    public static boolean isSingleton(String name) throws NoSuchBeanDefinitionException {
        return beanFactory.isSingleton(name);
    }

    /**
     * 
     *   ??getType
     *   @param name
     *   @return
     *   @throws NoSuchBeanDefinitionException
     *   Class<?>
     *   ?beanname?class
     *   
     *    20161110?9:59:55
     *   
     *   
     */
    public static Class<?> getType(String name) throws NoSuchBeanDefinitionException {
        return beanFactory.getType(name);
    }

    /**
     * 
     *   ??getAliases
     *   @param name
     *   @return
     *   @throws NoSuchBeanDefinitionException
     *   String[]
     *   ?beanname?bean??
     *          bean??bean????
     *   
     *    20161110?10:00:49
     *   
     *   
     */
    public static String[] getAliases(String name) throws NoSuchBeanDefinitionException {
        return beanFactory.getAliases(name);
    }

}