사용자 정의 함수를 작성하여 빠른 방법으로 얻고 싶습니다. dao에서 옵션을 선택하십시오. 저는 Spring을 사용하고 있습니다. 저는 사용자 정의 el 함수 클래스에 spring bean dao를 삽입하려고합니다.사용자 정의 el 함수에 스프링 빈 삽입하기
el 함수 클래스에서 정적 메서드를 사용하고있어 응용 프로그램 컨텍스트에 액세스 할 수 없습니다. 나는이 방법
public class AppContextUtil implements ApplicationContextAware
{
private ApplicationContext applicationContext;
private static final AppContextUtil instance=new AppContextUtil();
private AppContextUtil()
{
}
public static AppContextUtil getInstance()
{
return instance;
}
public <T> T getBean(Class<T> clazz)
{
return applicationContext.getBean(clazz);
}
/**
* {@inheritDoc}
*/
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException
{
this.applicationContext = applicationContext;
}
}
에 ApplicationContextAware의 구현을 사용하지만, ApplicationContext를가 null입니다.
의 ApplicationContext에 접근 할 수있는 유일한 방법은 BELOVE
WebApplicationContext appCtx =
WebApplicationContextUtils.getWebApplicationContext(context.getServletContext());
MyDAO myDAO = appCtx.getBean(MyDAO.class);
로하지만 난 엘 기능 PARAMS에 PageContext의를 통과하기 위해 필요한이 방법입니다.
스프링 빈을 지원하는 el 함수 클래스를 만드는 방법은 무엇입니까? 어떻게 정적 인 방식으로 applicationContext에 액세스 할 수 있습니까?
감사합니다.
I 스스로 해결 : 그것은 스프링 conf.xml 봄 빈으로 AppContextUtil 선언해야 – Premier