- 博客(92)
- 收藏
- 关注
原创 Java压缩jpg图片失败问题
Java中自带的`ImageIO`默认处理jpg格式图片时像素深度为8,read生成的处理器是由图片定义的,如果超过8就无法处理,故需要使用new出来的。
2024-10-23 18:08:51
284
原创 tomcat-valve通过servlet处理请求
上一节说到请求url定位servlet的过程,tomcat会把请求url和容器的映射关系保存到MappingData中,org.apache.catalina.connector.Request类实现了HttpServletRequest,其中定义了属性mappingData。还是慢慢看吧,首先在Wrapper容器中取出Servlet,然后创建用来处理请求的servlet过滤器链。方法,就是根据请求方式处理请求啦,也就是我们写的过滤器中处理请求的方法。定位servlet对请求进行处理的入口是。
2024-06-03 23:08:18
411
原创 tomcat-根据请求url映射servlet
之前说到对请求行和请求头进行解析,获取到请求信息,现在我们有了请求信息,就要根据请求url映射到servlet进行处理,接下来开始看这个过程。tomcat处理请求的线程中。其实这样看,根据请求url映射servlet相关容器的过程并不复杂,本质就是字符串处理的过程。方法根据请求url映射相关容器,映射容器的过程是在。
2024-05-31 22:41:43
665
原创 easyexcel解析excel文件原理解析
easyexcel解析excel文件,先初始化用来解析excel文件用到的参数,比如文件路径、表头行、行数据class等,然后使用poi基于事件的机制进行解析。获取到数据后会把列索引和cell数据保存到map,然后调用每个监听器的invoke方法进行处理
2024-04-23 19:30:26
2325
原创 xxl-job调度任务原理解析
xxljob可以对定时任务进行调度,现在看下定时任务调度的过程。实现了InitializingBean接口,spring会调用进行初始化。
2024-04-13 22:43:01
1267
原创 生产环境元空间内存溢出(OOM)的问题排查
通过这次生产问题的解决,自己也积累了一点排查问题的经验。首先解决问题的时候一定要学会分析,问题是什么,怎么产生的,怎么导致的,要一层一层的排查。然后就是大胆猜想,小心证明,一定要自己动手操作,容易产生灵感。现有的数据一定要好好利用。最后就是平时的积累很重要,因为不怎么熟悉jvm,所以很多工具还是现学现卖的,就比较耽误时间,所以平时不可以忽视学习积累的机会。
2023-10-25 21:44:14
2617
2
原创 mybatis注册类型别名
mybatis会根据配置项mybatis.type-aliases-package的值获取类别名路径,然后到路径下扫描获取路径下所有的class文件,在替换成Java语法格式class路径,然后使用类加载器进行加载得到Class对象。接着获取类的别名,可以用@Alias指定,没有就是类的小写全称,最终是保存到map中
2023-04-24 22:49:40
404
原创 Spring-Security处理请求的过程
security框架对请求的过滤其实就是调用FilterChainProxy封装的过滤器链中的每个过滤器的doFilter()方法,然后回到tomcat的过滤器链路
2023-03-23 15:15:39
197
原创 Spring-Security框架的启动过程
spring通过自动配置导入WebSecurityConfigurerAdapter扩展,然后实例化HttpSecurity,使用扩展对HttpSecurity进行配置,得到 完成配置后注入到DelegatingFilterProxy中,由DelegatingFilterProxyRegistrationBean添加到tomcat容器中,这样就能通过过滤器DelegatingFilterProxy找到FilterChainProxy完成过滤器的调用
2023-03-23 14:10:06
442
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人