项目结构:springmvc+hibernate+freemarker
环 境:windowsxp3
服 务 器:tomcat 6.0
问题:实现TemplateDirectiveModel的接口后,在excute方法中,如何获取HttpServletRequest的request对象,我想通过request获取我存在session中的用户信息;
下面是我的代码:
public void execute(Environment env, Map params, TemplateModel[] loopVars, TemplateDirectiveBody body) throws TemplateException, IOException { Map<String, TemplateModel> paramWrap = new HashMap<String, TemplateModel>(params); String[] bmStr = getBusMenu("mdl"); CmsBusMenu bm = new CmsBusMenu(bmStr[0], bmStr[1]); paramWrap.put(OUT_BEAN, DEFAULT_WRAPPER.wrap(bm)); Map<String, TemplateModel> origMap = DirectiveUtils .addParamsToVariable(env, paramWrap); body.render(env.getOut()); DirectiveUtils.removeParamsFromVariable(env, paramWrap, origMap); }
每次搜索都会搜到这篇博文,希望给之后遇到这个问题的朋友点帮助
@Autowired private HttpServletRequest request;
//spring3 之后可以采用这种写法获取