自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(242)
  • 资源 (1)
  • 收藏
  • 关注

原创 记一次http访问超时服务器端调试

查看jvm情况可知服务器创建了很多http-nio-9993-exec-线程,推测存在太多为关闭的连接,超出了连接数上线。这些线程都是空闲(WAITING (parking))状态,说明客户端未正常关闭,并且服务器设置了过长的超时时间。处理过程:telnet端口能连上,服务端程序也不存在处理时间过长的情况。问题:http访问服务器时没有返回,没有超时,一直在阻塞。解决方法:修改了保活超时时间。

2024-04-12 17:28:09 538 1

原创 代理服务器端口分配测试

注意http请求头X-Forwarded-For标识的源请求的地址,但没有标识源请求的端口。可以看出代理服务器能复用一些临时端口,并发量很高时或许存在端口不够的情况。上游服务器需要一个短暂或临时端口请求下游服务器,测试端口分配方式。虽然都起到代理的作用,但是原理有区别,按照端口进行转发,需要重新ip地址。只是在应用层,按照路径转发。

2024-04-12 14:59:18 338 1

转载 (转)Windows无法安装到这个磁盘,选中的磁盘采用gpt分区形式解决方法

以上就是装机之家分享的Win10系统提示Windows无法安装到这个磁盘,选中的磁盘采用gpt分区形式解决方法,我们只需要记得一个口诀就好了,UEFI引导对应的是GPT分区,而Legacy引导对应的是MBR分区,只要两者匹配的情况下,就不会弹出该错误了,还有可能就是主板BIOS中,磁盘是GPT格式,BOOT启动模式一定要对应修改为UEFI模式,不过在新主板中,选项默认双支持,同时支持Legecy和UEFI模式,就不要修改了,将U盘启动模式对应就好了。(选择磁盘0,也就是我们的硬盘,就是准备做系统的硬盘)

2024-04-07 10:55:34 64

原创 2024年4月记录(Statement执行多次查询)

记录

2024-04-02 10:46:39 78

原创 SL651-2014中心站协议解析简单实现

SL651协议在互联网中发送时可看成是一种应用层协议。本文用框架netty解析了该协议的中心站端的一部分,协议其余部分解析类似。

2024-02-05 11:38:17 737 1

原创 mybatis类型转换器处理MYSQL数据库geometry类型转换

首先分析mysql的geometry的存储格式和输入输出格式,再实现mybatis的转换器转换geometry格式。mybatis的配置见。

2024-01-23 17:38:57 571

原创 2024年1月记录(水文遥测站、中心站)

1.

2024-01-08 15:38:27 407

原创 java编译运行测试

则会在f:\test\out下生成和zy1.dto2.Demo1对应的包路径结构F:\test\out\zy1\dto2\Demo1.class。会默认在F:\test\zy\dto\目录下生成Demo1.class,如果指定编译路径f:\test\out。运行是似乎需要在classpath下,路径和包(package)严格匹配才能执行。结论:编译是需要指定输出路径-d才会生成与包(package)对应的路径。此时似乎只能在F:\test\out的classpath路径下运行。在F:\test运行。

2023-12-21 17:07:20 410

原创 SpringBoot读取properties文字乱码问题及相关问题

这中方式会将源文件中的一些中文和另一些不在 ISO-8859-1编码中的字符转换为unicode码,然后idea读取时转unicode转换为中文。就是说编辑和显示时idea先转换了一次,idea编辑器中看到的其实和源文件中的数据已经不一样了。巧合的时,SpringBoot读取properties的unicode编码字符串时会自动转为中文(yml格式就不行)。问题:在idea的编辑器中properties文件一般用UTF-8编码,当值出现中文时SpringBoot读取时出现了乱码。转换后idea编辑器显示,

2023-12-06 16:53:53 949

原创 2023年12月记录(逆否命题,复合命题,假言命题)

1.idea打开project时默认全屏。

2023-11-27 09:56:36 383

原创 java中转义字符的源码数据格式,内存存储数据格式和转换json后的数据格式

3.json数据解析是,字符串内部的\n 是以字符的ascll码形式发送,是有效数据,可解析成换行含义,也可只解析成字符串含义。而外部的换行直接以换行的ascll码发送,解析时忽略。要注意转义字符在每种语言的源码层面数据格式 和 内存存储的数据格式,一种语言的转义字符转换到另一种语言一版是转换到源码层面的,比如对于java来说,json可以看成一种源码。转义字符在内存存储格式 于 转换json后发送的数据格式是不一样的。因为json对于java来说可以看成一种源码,那就需要以源码的表示格式输出。

2023-10-13 17:25:09 255

原创 2023年10月记录(java双冒号写法(Lambda的简写),延迟队列,postgresql快速生成序列函数)

底层需调用本地方法java.lang.Double#doubleToRawLongBits获取浮点型原始值,并按照标准解析该值每一位。1.java中浮点转换字符串。

2023-10-11 17:40:36 89

原创 Postgresql事务测试

但是read committed是不可重复度的,一个事务中读取的2次数据的时间间隔里因为另一个事务的提交,导致2次数据读取不一致。read committed级别能解决脏读问题。其他事务未提交的数据无法读取。设置当前会话的隔里级别为REPEATABLE READ(可重复读)结果:read committed (读已提交)可见现在事务一前后读取数据一致。结果 123 24。能读到当前事务修改的数据。结果121 21。事务2查询之前的数据。

2023-09-19 11:01:23 360 1

转载 (转)一图搞懂扫码登录的技术原理和安全措施

现在扫码登录是一种很常见的登录方式。当用户需要登录某个网站时,网站会提供一种扫码登录的方式,用户打开相应的手机App,扫描网站上显示的二维码,然后在App中确认登录,网站监测到用户确认登录后,跳转到登录成功页面。从这个形式上看,扫码登录就是将用户在手机App中的登录状态同步到网站中,这篇文章就来一窥这个同步是如何发生的。

2023-08-29 16:53:34 381

原创 2023年7月记录

2023年7月记录

2023-07-24 09:24:40 50

原创 CF1826E. Walk the Runway(位图)

位图基本思想就是使64位数Long类型中每一位bit表示大小或存在等关系。表示关系的状态压缩后,能利用硬件的位运算使复杂度优化64倍。思路:该题关键是预处理需要求出在每一行m中,每一列元素的两两大小关系。需要时间复杂为O(m*n^2)。该题中预处理时需要对每一行进行排序,以便后一列利用前一列的结果。位图也可利用语言中自带的库函数。使用位图进行优化,时间复杂度优化为O((m*n^2)/64)。然后在用dp求出最大利润P。

2023-07-01 09:14:41 204

原创 下载文件抓包分析

当传输大文件时,无法开始确定长度,采用Transfer-Encoding: chunked方式。分割成几个chunk在一次http请求。

2023-04-24 14:44:13 168 1

原创 Sa-Token源码简单阅读

获取权限在第三方框架snowy中比较简单,因为缓存中已经存有token和session的映射(session中存有用户信息),直接通过token就能在缓存中取到了。取角色权限未必需要在过滤器中调用,可以在任何需要的时候调用。第三方框架snowy在登录时又在缓存中存了用户权限角色基本信息,方便单点登录时取权限角色信息(存在上面session的dataMap中)中存入用户信息(一般必须要有用户标识和访问token,或再加一些附加信息如用户的角色权限),再返回访问token给客户端。3.获取角色权限的方式。

2023-04-23 10:58:16 968

原创 类加载器对字符串加锁的源码

每个字符串对应一个加锁对象。

2023-02-16 17:35:44 93

原创 javap反编译枚举类测试

这里枚举值INSPECTION 添加了枚举值方法。编译后多产生了一个枚举的内部子类。INSPECTION 是该字类的示例。枚举是一种语法糖,编译到字节码后是一个类继承 java.lang.Enum,而枚举值是静态final成员变量。

2023-02-15 15:00:31 205

原创 java socket产生半包粘包问题

3.在应用层定义数据包长度字段,比如http协议中的content-type消息头。因为tcp协议还有底层链路层协议的限制本次单个tcp包最大的容量为1460个字节。比如TCP上传一张图片时,拆分成了多个tcp包。1.特殊字符比如回车/n /r来区分一段内容。从中可看出大多数响应为1460的整数倍。解决半包粘包一般3种思路。

2023-01-12 17:44:23 620

原创 PrintWriter类是对其他输出类的增强(待完善)

该构造函数看出,字节流被字符流增强,字符流被缓存流增强,缓存流被PrintWriter增强,很好的体现了包装设计模式和解耦的思想。

2022-12-28 17:19:18 77

原创 一种问题思考方式是假设存在解会确定一些必要条件

有些问题可以逆向思考,假设存在解会有什么必要条件,再证明这些是充分条件。

2022-12-16 14:26:11 77

原创 mybatis写postgis原生sql需要加强转类型 以及 配置geometry类型转换

再navicate写insert into "district" (name,code,position) VALUES('cesh2i3','ac1v3','SRID=4326;不会报错mybatis代码中写insert into "district" (name,code,position) VALUES('cesh2i3','ac1v3','SRID=4326;MULTIPOLYGON(((0 0,4 0,4 4,0 4,0 0)))'会报错。

2022-12-12 11:11:14 675

原创 mybatis-plus多数据源配置

这里结合了springboot的多数据源配置,主要是手动创建数据源,再手动设置配置一些配置参数。

2022-12-02 11:36:55 6130 3

原创 下层设计不应受上层(调用层)特性影响

不论数据库表结构、实体类、下层api的设计应该进可能通用,这样就能更好的解耦,具有更强的复用性、扩展性。这样设计类似有向无环图结构,树形结构。对于不同的上层调用情况可以添加对应的适配层。

2022-11-02 11:31:46 89

转载 (转)Spring Data JPA 之 @Query 语法详解及其应用

Spring Data JPA 之 @Query 语法详解及其应用_曾小二的秃头之路的博客-CSDN博客_jpa @query

2022-10-28 15:42:12 464

原创 postman测试webservice

Content-type是text/xml,不是application/xml。

2022-09-29 10:18:08 1667

原创 tomcat底层会默认对url地址参数或x-www-form-urlencoded格式的key-value进行url解码

解析方法在org.apache.tomcat.util.http.Parameters#processParameters(byte[], int, int, java.nio.charset.Charset)当解析到+或%是会进行url解码,源码片段解码后将添加到key-value值添加到该类这个map中 前端一般需要url编码。比如postman不会在地址中进行url编码,会在x-www-form-urlencoded消息体中进行url编码。以下从postman发出请求,这里key为 pas

2022-09-22 16:43:43 531

原创 2022年9月记录(AES加密,忽略SSL过期,webservice示例,注解@Async的使用)

【代码】2022年9月记录(AES加密)

2022-09-01 16:21:14 244

原创 Wireshark抓包分析

1.SYN时代表客户端发起请求,当服务端的端口未开启时,操作系统发送RST重置连接。4.ACK的值代表下一个包的起始流水号。PSH标志传输层消息体有数据发送。2.当服务端端口开启时,正常3次握手,SYN-->SYN,ACK-->ACK。5.链路层,ip层,传输层,应用层(在传输层消息体)3.四次挥手标志位FIN。有客户端或服务端发起。...........................

2022-08-26 17:41:40 1093

原创 注意java long的取模运算速度比int取模运算慢

内层循环最多只能有1个long取模运算,2个就会超时。int取模运算则快很多。

2022-08-21 03:15:55 708

原创 CF1707C - DFS Trees (树上差分)

主要是先得到最小生成树,每条多余的边能排除一些最小生成树的点比如上图多余的边是(u,v),就能把u,v以下的点都排除了.差分思想就是用一些特殊点代表一种累计效果.最后在求一次前缀和. 不同情况下细节略有不同.但是怎么在O(n)复杂度得到这些点?,就要用到差分思想,参考。...............

2022-08-12 14:49:36 194

原创 2022年7月记录(SpringBoot项目Kotlin报错,SpringBoot2.6集成swagger2,entityManager.createNativeQuery)

重新编译项目Build->RebuildProject。

2022-07-18 16:56:34 542

转载 java NIO相关文章集合

转载

2022-07-07 17:45:44 77

转载 (转)点个外卖时间,我把「软中断」搞懂了

最近,某团外卖被爆出大数据杀熟。所谓的大数据杀熟指的是平台利用户的数据,分析你是否是钱多的人,或者是否是不纠结价格的人,如果是,那么你买同样的物品会比普通用户贵一点。一般这种没有特地去对比价格是很难发现的,所以平台就利用了这点额外赚一些钱。说来很可笑,我们作为平台的资深用户,竟然被平台背后偷偷捞一笔。不过,大数据杀熟早已是屡见不鲜的事情了,事实上,几乎所有大平台都存在这种现象,没办法,这就是真实的互联网。刹车,大数据杀熟的话题就说到这了,我们还是回归到今日的技术主题:什么是软中断?。中断是什么?先来看看什么

2022-07-05 09:50:29 84

原创 Springboot整合Redis

1.springboot 2整合redis参考:1.0 Spring boot整合Redis实现发布订阅(超详细)_BBQ__XB的博客-CSDN博客_springboot 发布订阅1.1 连不上redis,改redis配置Unable to connect to Redis; nested exception is io.lettuce.core.RedisConnectionException: 解决办法_浪里小菜鸟的博客-CSDN博客1.2 Redis工具类 参考redis知识整理_安迪爸爸的博客-C

2022-07-01 16:37:40 407

转载 (转)centos 设置永久dns

最近在折腾一个问题。由于服务器的带宽是联通5M, 不稳定。而且所处的网络的dns解析貌似老出问题,每隔一定周期解析时间特别长。于是乎,想在本地做一个dns,这样可以减少dns解析时间,并做些静态配置,这样可以避免dns服务器拖后腿(不可控因素)。直接修改本地的dns配置(/etc/resolv.conf),发现一旦重启network service,这个文件就被重置了!但好处是改这个文件能立即生效。不用重启network service也可即生效!谷歌了下,找到解决方案:http://ask.xmodulo

2022-06-22 09:42:18 554

原创 Spingboot的字段校验

参考:@Valid 和 @Validated 注解用法详解_zyqok的博客-CSDN博客_@valid @validated@Valid注解是javax包下的注解,需配合BindingResult类。用@Validated更方便,只需添加全局异常处理类,处理校验失败情况。springboot版本:2.3.10.RELEASEmaven:全局异常处理............

2022-06-17 17:17:15 585

转载 (转)SpringBoot过滤器N种注册方式

通过 @WebFilter 注解来标记一个过滤器,这种方式相信大家很容易想到。这是将 Servlet 中的那一套东西直接拿到 Spring Boot 上用。具体做法就是通过 @WebFilter 注解来标记一个 Filter,如下:在 @WebFilter 注解中可以配置过滤器的拦截规则。这个注解要生效,还需要我们在项目启动类上配置 @ServletComponentScan 注解,如下:@ServletComponentScan 注解虽然名字带了 Servlet,但是实际上它不仅仅可以扫描项目

2022-06-16 14:48:13 945

随机过程,

随机过程随机过程随机过程随机过程随机过程随机过程

2014-09-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除