通過WebApplicationContextUtils內部的getRequiredWebApplicationContext方法,該方法需要傳入一個實體的類型,以及一個HttpServetRequest請求對象,獲取到BeanFactory(實體工廠類),從而通過工廠實體的getBean方法就可以拿到SpringDataJPA為我們管理的LoggerJPA持久化數據接口實例。
private<T> T getDAO(Class<T> clazz,HttpServletRequest request){
BeanFactory factory= WebApplicationContextUtils.getRequiredWebApplicationContext(request.getServletContext());
return factory.getBean(clazz);
}