
Web
文章平均质量分 93
JavaWeb、Spring MVC、Spring WebFlux
默辨
希望成为一个有思想的软件工程师
展开
-
SpringMVC中解决POST和GET请求中文乱码问题
写在前面:这个只是问题只需要添加一个简单的配置就可以了,并且对应的代码在程序中是死的,我们只需要按照对应的格式进行编码就可以了。本文主要解决的是POST和GET两种请求方式,希望对你有帮助!!!文章目录1、POST乱码1.1、在web.xml中配置1.2、具体的处理方式2、GET乱码2.1、在tomcat服务器中添加编码3、使用一个万能的配置类(解决POST和GET)1、POST乱码1.1、在web.xml中配置SpringMVC中,其为我们提供了过滤器CharacterEncodin.原创 2020-06-13 08:41:38 · 4137 阅读 · 1 评论 -
Spring WebFlux
我们不难发现整个响应式编程和传统的ServletAPI属于两套完全不同但是又并行的技术栈,所以如果老项目想要改造为响应式编程,项目改造的成本很大原创 2025-01-19 21:51:52 · 829 阅读 · 0 评论 -
Reactive Streams&Reactor Core
传统的命令式编程在面对当前需求时会有一些限制,比如,在应用负载较高时,应用需要有更高的可用性,并提供低的延迟时间。1)资源消耗大使用Servlet开发的单体应用,是基于传统的ThreadperRequest模型。当服务部署到Tomcat后,Tomcat有线程池,每个请求交给线程池中的一个线程来执行,如果执行过程中包括访问数据库,或者包括读取文件,则在调用数据库时或读取文件时,请求线程是阻塞的,即使是阻塞线程也是占用资源的,典型的每个线程要使用1MB的内存。原创 2025-01-18 23:42:03 · 1581 阅读 · 0 评论 -
浅谈SpringMVC源码的DispatcherServlet组件执行流程
文章目录一、基础概念1、初始化变量数据2、urlLookup集合3、策略设计模式4、前期的基本流程二、doDispatch1、文件相关2、拦截器三、getHandler(重点)1、HandlerMapping2、getHandlerInternal3、getHandlerExecutionChain四、getHandlerAdapter(重点)1、getHandlerAdapter方法2、ha.handle()3、invokeHandlerMethod4、invokeAndHandle5、invokeFor原创 2021-10-24 14:15:23 · 2462 阅读 · 0 评论 -
浅谈SpringMVC源码的SpringServletContainerInitializer的完整加载流程
本文主要讲解的是SpringMVC不使用web.xml文件,而是使用JavaConfig的方式完成对SpringMVC配置的配置。即换一种方式完成DispatcherServlet等类的配置。参考文章:SpringMVC 通过java类配置(不通过web.xml和xml 配置文件方式)通过本文,你将了解到:1. SpringMVC和Spring之间如何使用父子容器进行连接2. SpringMVC的ServletContextListener和DispatcherServlet是在什么时候进行加载,原创 2021-10-19 23:37:55 · 1163 阅读 · 1 评论 -
Tomcat组件架构图梳理
Tomcat组件架构图梳理原创 2022-07-17 19:51:35 · 937 阅读 · 0 评论 -
简单分析Tomcat中WebappClassLoader的loadClass方法
tomcat自定义在Java的双亲委派机制的基础上进行了修改。甚至于为了各个服务直接相互隔离,直接打破了双亲委派机制。那么什么叫打破双亲委派机制呢?我们都知道tomcat是一个容器,容器是可以存放我们的项目,并且可以部署不止一个项目。如果A项目和B项目共同使用到了一个类库,但是两个类库的版本不一样,如果还是使用传统的双亲委派机制,那么在加载这个不同版本的类的时候必然会加载到同一个类,这是我们不希望看到的。基于此,tomcat打破双亲委派机制,对应用类加载器进行了扩展,于是也就衍生出了SharedC.原创 2022-02-16 00:08:56 · 1436 阅读 · 0 评论 -
简单测试Content-Length和Chunked两种不同的数据传输方式
Content-Length:按照数据长度进行数据传输Chunk:按照块进行数据传输如下图的样例请求,只是此时的Content-length为响应头中 一、代码测试本文将使用ApiPost对两种不同的携带数据的方法进行测试1、前期准备1、准备一个ApiPost(自己使用postman进行测试时,无法测试成功) 2、编写对应的测试类public class TestServerSocket { public static void main(String[] args.原创 2022-02-14 23:11:43 · 5428 阅读 · 0 评论 -
浅谈Tomcat接收到一个请求后在其内部的执行流程(源码)
写在前面,本文不涉及具体的tomcat内部数据处理的讲解,只涉及具体的执行流程逻辑处理。在阅读本文后,如果你能够完成tomcat源码中接收请求后的代码执行流程调试,那么本文的目的也就达到了,希望对你有帮助。本文的大背景是,tomcat7.x,http协议,BIO模型。如文中出现表述不准确的,请告诉我,我将及时做出调整。文章目录一、前提二、流程图三、详细流程(附源码截图)1、初始化Connector2、实例化Http11Protocol3、调用JIoEndpoint内部类Acceptor4、调用具体.原创 2022-02-08 23:59:21 · 2631 阅读 · 0 评论 -
浅谈Tomcat的启动流程(源码级别)
文章目录一、启动入口1、startup.sh2、catalina.sh二、基础组件概念梳理1、整体架构2、LifecycleBase抽象类3、实现了LifecycleBase抽象类的子类三、tomcat初始化(init)1、tomcat自定义类加载器四、tomcat加载(load)1、createStartDigester(第2步)1)抽象指定的层级关系2)addObjectCreate3)addRuleSet4)addRule2、getServer().init(第5步)1)JMX2)globalNami原创 2022-01-23 15:37:29 · 6654 阅读 · 2 评论 -
Apache POI简单入门
文章目录一、简介1.1、POI1.2、EasyExcel1.3、对比二、POI2.1、03版本写入2.2、07版本写入2.3、批量写入2.4、普通读取2.5、不同类型的数据读取在我们的项目中,经常会使用项目导入和导出的功能。本文以操作Excel为例,目前比较流行的是Apache POI和阿里巴巴的EasyExcel。本文只讲了POI,EasyExcel的学习可以参考对应的官方文档一、简介1.1、POIApache POI官网Apache POI是Apache软件基金会的开放源码函式库,POI原创 2021-02-14 22:43:12 · 1619 阅读 · 0 评论 -
JavaWeb知识点复习(第一次)
JavaWeb学习完这一个阶段,我们应该是能够完成一个简单的javaEE企业级开发项目了。后来的那些技术都是对JavaWeb技术的一个再封装,继而使得操作系更强,对开发者更加友好。JavaWeb是走向外来的关键一步。我由于总总原因直接上手了SSM,最开始感觉还是有些许吃力的,毕竟东西学起来容易,但是思维转变起来却很难。JavaWeb是java进阶到SSM框架的一个过渡阶段,如果你在javaW...原创 2020-04-08 21:09:42 · 5975 阅读 · 4 评论 -
AJAX和JSON
AJAX和JSON1、概述2、JSON2.1、知识储备前提2.1、初识JSON2.3、使用第三方jar包JackJson2.4、工具类的妙用2.5、使用第三方jar包FastJson3、AJAX3.1、初始AJAX3.2、jQuery的AJAX3.3、返回后端字符串案例3.4、利用AJAX实现登录案例1、概述Web1.0时代早期:如果登录失败,需要刷新页面,才能重新登录Web2.0时代...原创 2020-03-21 09:00:21 · 712 阅读 · 0 评论 -
JavaWeb(二)
6、Servlet6.1、Servlet简介Servlet是sun公司用于开发动态web的一门技术sun公司在这些API中提供的一个叫做Servlet的接口编写一个类,实现Servlet接口把开发好的java类部署到web服务器中把实现了Servlet接口的java程序叫做Servlet6.2、构建一个Maven项目,HelloServlet构建一个普通的Mav...原创 2020-03-05 17:04:00 · 416 阅读 · 0 评论 -
JavaWeb(一)
JavaWebjava + webTomcat服务器及Maven部分1、基本概念1.1、前言web开发:web:网页静态webhtml、css提供给所有人看的数据始终不会发生变化动态web淘宝,几乎所有的网站提供给所有人看的数据始终会发生变化,每个人在不同的时间,不同的地点看到的信息不一样技术栈:Servlet/JSP ,ASP, PHP在java中...原创 2020-02-27 16:17:32 · 595 阅读 · 0 评论