码迷,mamicode.com
首页 > 编程语言 > 详细

Spring MVC中一般类使用service

时间:2014-09-24 13:23:16      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:spring mvc   springcontextutil   service   

    在Spring MVC中,Controller中使用service只需使用注解@Resource或者@Persist就行,但是一般类(即不使用@Controller注解的类)要用到service时,可用如下方法:

     1、SpringContextUtil

    

package com.test.framework.utils;

import org.springframework.beans.BeansException;
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;

public class SpringContextUtil implements ApplicationContextAware {

	private static ApplicationContext applicationContext; // Spring应用上下文环境

	// 下面的这个方法上加了@Override注解,原因是继承ApplicationContextAware接口是必须实现的方法
	@Override
	public void setApplicationContext(ApplicationContext applicationContext)
			throws BeansException {
		SpringContextUtil.applicationContext = applicationContext;
	}

	public static ApplicationContext getApplicationContext() {
		return applicationContext;
	}

	public static Object getBean(String name) throws BeansException {
		return applicationContext.getBean(name);
	}

	public static Object getBean(String name, Class requiredType)
			throws BeansException {
		return applicationContext.getBean(name, requiredType);
	}

	public static boolean containsBean(String name) {
		return applicationContext.containsBean(name);
	}

	public static boolean isSingleton(String name) throws NoSuchBeanDefinitionException {
		return applicationContext.isSingleton(name);
	}

	public static Class getType(String name)	throws NoSuchBeanDefinitionException {
		return applicationContext.getType(name);
	}

	public static String[] getAliases(String name) throws NoSuchBeanDefinitionException {
		return applicationContext.getAliases(name);
	}
}

       2、Spring的配置文件application.xml中进行如下配置

    

<bean id="SpringContextUtil" class="com.cnpc.framework.utils.SpringContextUtil"  scope="singleton"/>


        3、使用
       

DictService dictService = (DictService) SpringContextUtil.getBean("dictService");
List<Dict> dict = (List<Dict>) dictService.findByHQL(hql);

Spring MVC中一般类使用service

标签:spring mvc   springcontextutil   service   

原文地址:http://blog.csdn.net/jrn1012/article/details/39520833

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!