springMVC想直接获取jdbcTemplate,很苦逼的折腾了一天没解决,好吧,我承认我很菜....最后在网上搜到此方法,亲测可用,遂转发于此,以飨大家。
这个方法初始化很慢,ApplicationContext context = new ClassPathXmlApplicationContext();当时我觉得没有这个必要,浪费内存。后来我终于想出了一个解决方法。在此拿来给大家参考下,希望对大家有帮助。
我写的代码如下:package com.task.common;import java.util.Locale;import org.springframework.beans.BeansException;import org.springframework.context.ApplicationContext;import org.springframework.context.ApplicationContextAware;/** * 获取Spring上下文及国际化 * @author bingchuan -->www.vijun.com * */public final class SpringContextUtil implements ApplicationContextAware { private static ApplicationContext context; @SuppressWarnings("static-access") public void setApplicationContext(ApplicationContext contex) throws BeansException { this.context=contex; } public static Object getBean(String beanName){ return context.getBean(beanName); } public static String getMessage(String key){ return context.getMessage(key, null, Locale.getDefault()); }}
1.首先在spring配置文件中中初始化
< bean class = "com.task.common.SpringContextUtil" id = "springContextUtil" />
2.使用
JdbcTemplate jdbcTemplate= (JdbcTemplate)SpringContextUtil.getBean("jdbcTemplate");