Spring5中SpringWebContext方法过时的解决方案
作者:Chandler丶
这篇文章主要介绍了Spring5中SpringWebContext方法过时的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
Spring5 SpringWebContext方法过时
为了优化访问速度,应对高并发,想把页面信息全部获取出来存到redis缓存中,这样每次访问就不用客户端进行渲染了,速度能快不少。
thymeleafViewResolver.getTemplateEngine().process("goodslist.html",ctx);
里面的ctx参数,这个参数就是WebContext
然后定义这个变量
SpringWebContext ctx = new SpringWebContext()
但是发现无法调用到,因为项目使用的是thymeleaf.spring5的版本
org.thymeleaf.spring4下面没有相同类型的,
因为在thymeleaf.spring5的API中把大部分的功能移到了IWebContext下面,用来区分边界。剔除了ApplicationContext 过多的依赖,现在thymeleaf渲染不再过多依赖spring容器
调用这个即可
IWebContext ctx =new WebContext(request,response, request.getServletContext(),request.getLocale(),model.asMap());
SpringWebContext在Spring5中报错
想把页面信息全部获取出来存到redis缓存中,用
SpringWebContext ctx = new SpringWebContext(request, response, request.getServletContext(), request.getLocale(), model.asMap(), applicationContext);
代码报错,
解决办法(SpringWebContext在spring5中过时)
//手动渲染 IWebContext ctx =new WebContext(request,response, request.getServletContext(),request.getLocale(),model.asMap());
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。