特殊な場合は容器にbeanを注入できない解決策
1166 ワード
@Autowiredが注入できない場合
package com.rzt.utils;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;
@Component
public class SpringUtil implements ApplicationContextAware {
/**
* IOC
*
*/
@Autowired
private static ApplicationContext applicationContext;
/**
* * , spring
*
*/
@Override
public void setApplicationContext(ApplicationContext arg0)
throws BeansException {
applicationContext = arg0;
}
/**
* IOC bean
*
* @param id
* bean id
* @return
*
*/
public static Object getObject(String id) {
Object object = null;
object = applicationContext.getBean(id);
return object;
}
public static Object getObject(Class id) {
Object object = null;
object = applicationContext.getBean(id);
return object;
}
}