1.由於LogInfoUtil類沒有受注入掃描,就算給 dictService加註解,也不能解決;
2.由於dao層是接口,不能new,所以不能實例化點調;
實例代碼如下:
package com.pns.util;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.context.support.WebApplicationContextUtils;
import org.springframework.web.context.support.XmlWebApplicationContext;
import com.pns.service.dict.DictService;
public class LogInfoUtil {
private DictService dictService;
public void CreatLogInfo(HttpServletRequest request,String sendrec_flg,String class_path,String method_name,
String flag,String data_org,String data_input){
Map<String,Object> map = new HashMap<String,Object>();
map.put("sendrec_flg", sendrec_flg==null?"":sendrec_flg);
map.put("class_path", class_path==null?"":class_path);
map.put("method_name", method_name==null?"":method_name);
map.put("flag", flag==null?"":flag);
map.put("data_org", data_org==null?"":data_org);
map.put("data_input", data_input==null?"":data_input);
ServletContext sc = request.getSession().getServletContext();
XmlWebApplicationContext cxt = (XmlWebApplicationContext)WebApplicationContextUtils.getWebApplicationContext(sc);
if(cxt != null && cxt.getBean("dictService") != null && dictService == null){
dictService = (DictService) cxt.getBean("dictService");
}
dictService.insertLogInfo(map);
}
}