zoukankan      html  css  js  c++  java
  • SpringUtil

    /** SpringUtil.java
    
    {{IS_NOTE
        Purpose:
            
        Description:
            
        History:
            Thu Jun  1 13:53:53     2006, Created by henrichen
    }}IS_NOTE
    
    Copyright (C) 2006 Potix Corporation. All Rights Reserved.
    
    {{IS_RIGHT
    }}IS_RIGHT
    */
    package org.zkoss.zkplus.spring;
    
    import javax.servlet.ServletContext;
    
    import org.springframework.beans.factory.BeanNotOfRequiredTypeException;
    import org.springframework.beans.factory.NoSuchBeanDefinitionException;
    import org.springframework.context.ApplicationContext;
    import org.springframework.web.context.support.WebApplicationContextUtils;
    import org.zkoss.zk.ui.Execution;
    import org.zkoss.zk.ui.Executions;
    import org.zkoss.zk.ui.UiException;
    
    /***
     * SpringUtil, a Spring utility.
     * <p>Applicable to Spring Framework version 2.x or later</p>
     * @author henrichen
     */
    public class SpringUtil {
        /***
         * Get the spring application context.
         */
        public static ApplicationContext getApplicationContext() {
            Execution exec = Executions.getCurrent();
            if (exec == null) {
                throw new UiException("SpringUtil can be called only under ZK environment!");
            }
            
            return WebApplicationContextUtils.getRequiredWebApplicationContext(
                    (ServletContext)exec.getDesktop().getWebApp().getNativeContext());
        }
        
        /***
         * Get the spring bean by the specified name.
         */        
        public static Object getBean(String name) {
            Object o = null;
            try {
                if(getApplicationContext().containsBean(name)) {
                    o = getApplicationContext().getBean(name);
                }
            } catch (NoSuchBeanDefinitionException ex) {
                // ignore
            }
            return o;
        }
    
        /***
         * Get the spring bean by the specified name and class.
         */        
        public static Object getBean(String name, Class cls) {
            Object o = null;
            try {
                if(getApplicationContext().containsBean(name)) {
                    o = getApplicationContext().getBean(name, cls);
                }
            } catch (NoSuchBeanDefinitionException ex) {
                // ignore
            } catch (BeanNotOfRequiredTypeException e) {
                // ignore
            }
            return o;
        }
    }

    转载:http://www.oschina.net/code/explore/zk-src-5.0.5/zkplus/src/org/zkoss/zkplus/spring/SpringUtil.java

  • 相关阅读:
    02_类和对象
    Django_数据库增删改查——增
    Django_同步数据库
    Django_models类属性。
    CSS_垂直居中
    CSS_背景属性
    CSS_定位
    CSS_浮动
    CSS_盒子模型
    CSS_元素的分类
  • 原文地址:https://www.cnblogs.com/zhao123/p/3876824.html
Copyright © 2011-2022 走看看