- 博客(282)
- 资源 (8)
- 收藏
- 关注

原创 《java虚拟机》jvm内存模型,jvm优化
线程 概述 程序计数器 线程私有 随线程生,随线程死. 1.每个线程分配一个独立的计数器. 2.用来记录需要执行的下一个指令. 3.在处理器内部. Java虚拟机栈 线程私有 随线程生,随线程死...
2018-10-28 22:52:51
332
原创 前后端传输 Long 类型数据时(时间戳,雪花算法ID),精度丢失的根本原因
前后端传输 Long 类型数据时,精度丢失的根本原因是 JavaScript 的 Number 类型无法精确表示超过 53 位(64 位双精度浮点数)的整数,而 Java 的 Long 类型是 64 位整数。当后端返回的 Long 值超过 (即 )时,前端解析会出现精度错误。后端修改(Spring Boot 示例):局部方案:在字段上添加 注解 全局方案:配置 Jackson 序列化规则 前端处理:直接使用字符串类型的 ID,避免用 类型解析:javascript方案
2025-05-28 17:41:02
616
原创 Mybatis使用update更新值为null时不生效问题解决
MyBatis-Plus更新null值失效问题源于FieldStrategy默认非空策略。解决方法:1)全局配置field-strategy为IGNORED(可能影响业务);2)为特定属性添加@TableField(strategy=IGNORED)注解;3)使用LambdaUpdateWrapper明确设置null值。第三种方式能精准控制更新字段,推荐使用。
2025-05-27 16:17:45
352
原创 RabbitMQ 为什么引入 Exchange 的概念, 交换机有什么作用.
解耦:生产者不依赖队列的具体实现。灵活性:通过多种路由策略支持复杂业务场景。扩展性:动态绑定和解绑队列,适应系统变化。标准化:符合 AMQP 协议,确保生态兼容性。如果没有 Exchange,消息路由的复杂性将直接转移到生产者和队列,导致系统僵化且难以维护。
2025-04-15 17:42:12
941
原创 FireCrawl爬虫工具, Craw4ai
是一款开源的AI爬虫工具,专门用于Web数据提取,并将其转换为Markdown格式或其他结构化数据。FireCrawl特别适合处理使用JavaScript动态生成的网站,能够自动抓取网站及其所有可访问的子页面内容,并将其转换为适合大语言模型训练的数据格式12。
2025-04-14 23:44:02
1182
原创 aviator 自定义表达式
/ 自定义函数类@Override@Override// 注册自定义函数// 定义一个调用自定义函数的表达式// 创建一个 Map 用于存储变量的值// 执行表达式求值,并传入变量环境System.out.println("表达式 " + expression + " 的计算结果是: " + result);
2025-04-11 17:34:26
272
原创 一致性哈希算法原理与应用
一致性哈希通过环形拓扑和虚拟节点技术,解决了分布式系统中节点动态变化时的数据路由问题,显著降低了数据迁移成本并提升了负载均衡能力。(通常范围是 0∼2的32次方−1),将节点和数据映射到环上,数据按顺时针方向找到最近的节点。但若节点数量变化(如节点宕机或新增节点),哈希结果会因模数 N 的改变而完全打乱,导致几乎所有数据需要重新分配。例如,环上新增节点 D,仅需将原属于节点 B 的部分数据迁移到 D。:Google 提出的算法,无需虚拟节点,但仅支持顺序节点增减。:节点宕机时,数据自动迁移到下一个节点。
2025-02-19 16:23:35
803
原创 nginx负载均衡, 解决iphash不均衡的问题之consistent
确保使用完整客户端IP,或结合其他字段(如User-Agent)增强哈希多样性。:增删节点时,传统ip_hash未使用一致性哈希,导致分布重置。:例如仅使用IPv4前24位,不同IP可能哈希到同一值。:使用工具(如Prometheus)实时监控服务器负载。:部分IP段请求集中,导致哈希到同一后端。:调整配置前,在测试环境验证负载均衡效果。:逐步应用新配置,避免一次性变更引发问题。:检查各后端请求量,确认分布是否倾斜。:分析是否有特定IP段请求量过大。参数,减少节点变动时的分布波动。
2025-02-19 15:54:40
605
原创 pandas.core.series.Series 转json
在Python中,可以使用Pandas库中的方法将Series对象转换为JSON格式的字符串。方法中的参数orient决定了输出的JSON格式。常用的orient'split': 字典形式,包含索引、列标签和数据。'records': JSON行的列表,每个记录是一个键值对的字典。'index': JSON行的列表,每个记录是索引值和数据项的键值对。'columns': JSON行的列表,每个记录是列名和数据项的键值对。'values': 纯数据值的列表。根据需要选择合适的orient参数。
2024-07-25 15:45:20
504
原创 mybatis的xml标签用法, Mapper.xml
动态 SQL 是 MyBatis 的强大特性之一。在 JDBC 或其它类似的框架中,开发人员通常需要手动拼接 SQL 语句。根据不同的条件拼接 SQL 语句是一件极其痛苦的工作。例如,拼接时要确保添加了必要的空格,还要注意去掉列表最后一个列名的逗号。而动态 SQL 恰好解决了这一问题,可以根据场景动态的构建查询。动态SQL(code that is executed dynamically),它一般是根据用户输入或外部条件动态组合的SQL语句块。
2024-07-19 13:49:42
1369
原创 工作流之节点回退, 回退到上一个节点
工作流审批流程会遇到, 审批不通过, 回退到指定节点, 或者回退到上一个节点.回退到指定节点, 通过moveTo 实现回退到上一个节点, 假如当前节点流入得分支有很多, 该如何判断上个节点是谁呢?
2024-05-24 11:53:08
591
原创 Maven之The packaging for this project did not assign a file to the build artifact
我使用的是Plugins中的插件,但我并没有在pom.xml中配置该插件。1、在pom.xml中配置该插件,稍微麻烦一些。2、改用Lifecycle中的方法。
2024-05-11 10:30:29
1350
原创 主机关、专设机关、派出机关 区别
是由县级以上地方人民政府在一定区域内设立的行政机关,不是一级行政政权,而是受派出人民政府委托,进行行政管理。派出机关通常包括行政公署、区公所、街道办事处等,它们的职能是综合的,权限是多方面的,对所管辖的某一区域或领域内的经济和社会事务进行管理。设机关通常是主机关下属的工作部门, 如财政局、教育局等,它们专门负责财政、教育等领域的工作。例如,某县政府是一个典型的主机关,它负责该县范围内的行政管理工作。是指具有独立法人地位的政府机构,它们通常负责一个行政区域内的全面工作。
2024-04-19 16:37:27
496
原创 flowable的流程变量设置setVariables 和 setVariablesLocal区别?
在流程执行或者任务执行的过程中,用于设置和获取变量,使用流程变量在流程传递的过程中传递业务参数。对应的表:act_ru_variable:正在执行的流程变量表act_hi_varinst:流程变量历史表。
2024-04-02 18:19:04
458
原创 内网穿透Neutrino-Proxy, 中微子代理
neutrino-proxy: NeutrinoProxy(中微子代理) 一款基于solon、netty的内网穿透神器!
2024-01-19 18:40:37
801
原创 java执行python乱码问题
用Runtime.getRuntime.exec()调用Python脚本时,Java端捕获脚本有中文输出时,输出的中文可能会是乱码,因为Python安装在Windows环境下的默认编码格式是GBK。
2023-12-11 13:43:08
442
原创 java获取classpath路径, maven项目获取classpath路径
有一个类位于 src/main/java/com/qunar/MyClass.java。test.txt和MyClass并不在一个层级,因为MyClass之前还有两个包。有一个文件位于 src/main/resources/test.txt。此时的路径是相对于MyClass这个类在运行时路径而言的,通过当前类的加载路径使用相对路径来获取资源地址。而classpath可以通过如下代码获取。可以直接获取文件路径。
2023-12-08 11:52:43
328
原创 java8中的函数式接口的应用
distinctByKey是静态方法, 静态方法中的局部变量,会在静态方法被调用时初始化, distinctByKey中Set set = Sets.newConcurrentHashSet();是个局部变量, 他怎么做到去重?以上是文心一言的回答, 它强调使用函数作为参数, 只调用了一次静态方法 distinctByKey. 静态方法内部完成了去重. 整个过程打包运行.下面是一个去重的代码。
2023-11-08 18:25:58
311
原创 函数式接口详解(Java)
Java中函数式编程体现就是Lambda表达式,所以函数式接口就是可以适用于Lambda使用的接口只有确保接口中仅有一个抽象方法,Java中的Lambda才能顺利地进行推导如何检测一个接口是不是函数式接口呢?注意:我们自己定义函数式接口的时候,@Functionallnterface是可以选的,就算我们不写这个注解,只要保证满足函数式接口定义的条件,也照样是函数式接口。但是,建议加上该注解1.2 函数式接口作为方法的参数1.3 函数式接口作为方法的返回值。
2023-11-01 15:34:34
193
原创 设计模式__享元模式
当一个系统中存在大量重复对象,若这些重复的对象是不可变对象,就能利用享元模式将对象设计成享元,在内存中只保留一份实例,供引用。主要解决:在有大量对象时,有可能会造成内存溢出,我们把其中共同的部分抽象出来,如果有相同的业务请求,直接返回在内存中已有的对象,避免重新创建。尝试复用现有的同类对象,如果未找到匹配的对象,则创建新对象。实现主要是通过工厂模式,在工厂类中,通过一个Map或List缓存已创建好的享元对象,以复用。“享元”,被共享的单元,即复用对象,节省内存,注意前提是。享元对象是不可变对象。
2023-08-14 14:01:15
9
原创 java的泛型
Java泛型是J2 SE1.5中引入的一个新特性,其本质是参数化类型,也就是说所操作的数据类型被指定为一个参数(type parameter), 这种参数类型可以用在类、接口和方法的创建中,分别称为。泛型的本质是为了参数化类型(通过泛型指定的不同类型来控制形参具体限制的类型)。
2023-04-14 14:48:01
434
原创 springSecurity源码之鉴权原理
上文配置中放入了两个投票器,其中第二个投票器就是需要创建的投票器,起名为 AccessDecisionProcessor。投票其也是有一个接口规范的,只需要实现这个 AccessDecisionVoter 接口就行了,然后实现它的方法。具体的实现返回 int,可能的值反映在 AccessDecisionVoter 静态字段如果投票实施对授权决定没有意见,则将返回 ACCESS_ABSTAIN。如果确实有意见,则必须返回 ACCESS_DENIED 或 ACCESS_GRANTED@Slf4j。
2023-03-13 09:17:53
636
原创 HTTPS实现原理
但是,当服务端要返回数据,如果用公钥加密,那么客户端并没有私钥用来解密,而如果用私钥加密,客户端虽然有公钥可以解密,但这个公钥之前就在互联网上传输过,很有可能已经有人拿到,并不安全,所以这一过程只用非对称加密是不能满足的。在这个过程中,系统或浏览器中内置的CA机构的证书和公钥成为了至关重要的环节,这也是CA机构公信身份的证明,如果系统或浏览器中没有这个CA机构,那么客户端可以不接受服务端传回的证书,显示HTTPS警告。各级CA机构的私钥是绝对的私密信息,一旦CA机构的私钥泄露,其公信力就会一败涂地。
2023-03-03 09:13:43
7
原创 SpringBean的单例和多例使用
答:为了提高性能。由于不会每次都新创建新对象,所以就减少了新生成实例的消耗。因为spring会通过反射或者cglib来生成bean实例这都是耗性能的操作,其次给对象分配内存也会涉及复杂算法。减少JVM垃圾回收,由于不会给每个请求都新生成bean实例,所以自然回收的对象少了。可以快速获取到bean,因为单例的获取bean操作除了第一次生成之外其余的都是从缓存里获取的所以很快。
2022-10-12 11:01:31
2331
原创 软件工程__软件开发方法
自顶向下, 逐步分解求精. 严格分阶段, 阶段产出标准化. 应变能力差。3.面向对象: 自底向上, 阶段界限不明。2.结构化法: 面向过程。1.原型法(需求阶段)
2022-09-27 23:19:36
345
原创 机器学习____PCA算法
PCA主成分分析法, principal Component Analysis .把高维度数据在损失最小的情况下转换为低纬度数据的算法.
2022-09-24 00:06:32
466
原创 机器学习___支持向量机___SVM
支持向量机简称SVM, support Vector machine. SVM是一种分类算法.比如分隔图中的三角形 和圆形.SVM的算法原理就是找到一个。适用数据集较小的情况下.
2022-09-23 23:42:10
204
html转pdf的几个demo(wkhtmltox,com.pd4ml,itext)
2016-12-06
elasticsearch-5.6.0.zip
2017-09-15
加密解密,前端加密,后端解密
2017-09-14
elasticsearch-5.6.0.tar.gz
2017-09-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人