Spring Boot2.0中SpringWebContext找不到无法使用的解决方法
前言
为了应对在SpringBoot中的高并发及优化访问速度,我们一般会把页面上的数据查询出来,然后放到redis中进行缓存。减少数据库的压力。
在SpringBoot中一般使用
thymeleafViewResolver.getTemplateEngine().process("goodlist", ctx);
进行页面的渲染,而这个ctx就是SpringWebContext对象,我们一般进行如下获取:
SpringWebContext swc=new SpringWebContext(request,response,request.getServletContext(),request.getLocale(),model.asMap(),applicationContext);
在SpringBoot 1.X的版本中以上代码可以使用。但在SpringBoot 2.0中,就无法找到SpringWebContext了。那应该如何去解决这个问题呢?
解决思路
说一下我的思路,.process方法中ctx所在参数所需要的类型为接口IContext
也就是需要有实现了IContext的类就可以了,然后进入IContext接口找所有的实现类
然后看到WebContext似乎有些像上面所用的SpringWebContext。即做出如下改变,完美实现了thymeleaf的页面渲染。
WebContext ctx = new WebContext(request, response, request.getServletContext(), request.getLocale(), model.asMap()); html = thymeleafViewResolver.getTemplateEngine().process("goodlist", ctx);
在SpringBoot 2.0中使用上述代码,可以完全替代。
(当然在下不才,暂时只找到了这种办法,在网络上也没找到对应的比较不错的策略。所以分享出来,以备分享出来,帮助遇到此问题的程序员们。如果大家有什么更好的处理办法可以一起互相交流哦)
目前我正在搞基于SpringBoot、Redis、消息队列的秒杀小项目,主要还是为了梳理如何解决高并发的问题过程。
GitHub:https://github.com/iquanzhan/SecKillShop (本地上传)
所用技术
1.后端:SpringBoot、JSR303、MyBatis
2.前端:Thymeleaf、BootStrap、Jquery
3.中间件:RabbitMQ、Redis、Druid
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。
相关文章
java利用htmlparser获取html中想要的代码具体实现
这篇文章主要介绍了java利用htmlparser获取html中想要的代码具体实现,需要的朋友可以参考下2014-02-02SpringBoot结合ProGuard实现代码混淆(最新版)
这篇文章主要介绍了SpringBoot结合ProGuard实现代码混淆(最新版),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-10-10IntelliJ IDEA快速查询maven依赖关系图文教程
Maven提供了来查看依赖关系,而IDE往往提供了更加便利的方式,比如Eclipse或者IDEA都有类似的功能,下面这篇文章主要给大家介绍了关于IntelliJ IDEA快速查询maven依赖关系的相关资料,需要的朋友可以参考下2023-11-11Java入门基础之Java的基本语法与Java所支持的数据类型
这篇文章主要介绍了Java入门基础之Java的基本语法与Java所支持的数据类型,熟悉语法和数据类型通常是了解一种编程语言的开始,需要的朋友可以参考下2016-02-02
最新评论