- 博客(245)
- 收藏
- 关注
原创 扒开Python和Java爬虫的“内裤”,原来区别这么大!
选Python:如果你想快速实现一个爬虫,不想花太多时间在语法和配置上;或者爬取规模不大,对性能要求不高。选Java:如果你需要开发一个大型、稳定、高性能的爬虫系统;或者需要与企业级系统(如Spring、Hadoop)集成;或者爬取的网站反爬严格。小爬虫,用Python,开发快如闪电;大项目,用Java,性能稳如泰山。下次别再用Java写小爬虫,也别用Python硬刚大规模爬取了——工具选对,事半功倍!-END-如果你喜欢我的分享,欢迎关注微信公众号java学长分享技术干货!
2025-07-30 10:45:17
592
原创 我用接口和抽象类重构了保险系统,架构师看完给我涨了薪!
/ 保险接口:定义理赔规矩// 校验理赔材料(具体怎么校验,由实现类决定)// 计算理赔金额(不同险种算法不同)// 提交理赔申请// 医疗险实现@OverrideSystem.out.println("校验医疗险理赔材料:诊断证明、发票");.anyMatch(doc -> "诊断证明".equals(doc.getType()) || "发票".equals(doc.getType()));@Override。
2025-07-29 16:05:35
218
原创 maven依赖下载流程总结
Maven构建依赖搜索路径遵循特定顺序:首先检查本地仓库,若未找到则依次查询镜像配置、项目pom.xml中定义的仓库、settings.xml文件中的插件仓库、激活profile指定的仓库,最后才会访问中央仓库。这种层级搜索机制优先使用本地和私有仓库资源,确保依赖获取高效可靠。
2025-06-22 10:59:07
158
原创 吐槽之前后端合作开发
大家好,我是佳瑞,从事10多年java开发程序员,爆照一张,存活互联网。也做过vue开发自己的网站,觉得前端是真比后端开发轻松很多,就是画页面调样式,打包发布,当然不说是高级源码修改的前端,开发脚手架的高级前端,只说常见的crud功能开发的前端。
2025-06-21 16:42:57
175
原创 生活之什么是java热部署
比如你正在用锅煮面条(程序运行中),突然发现忘了加鸡蛋(需要修改代码)。传统方式是关掉火(停止程序)、重新加水放面(重启程序),很麻烦。而热部署就像不关火,直接把鸡蛋敲进锅里(修改代码后直接更新),面条继续煮,你不用等重新开锅,就能吃到加蛋的面啦~核心原理:程序运行时动态替换类文件,不用重启就能让新代码生效,提升开发效率~
2025-06-18 08:51:18
379
原创 开发必备基础知识之linux负载
◦ 可能出现“负载高但CPU使用率低”的情况:比如很多任务在等硬盘读数据(像顾客在等扫码器扫码),CPU闲着但任务堵在队列里,负载就会变高。比如老电脑硬盘读写慢(像收银台扫码器坏了,结账速度变慢),即使CPU不忙,也会因为其他硬件拖后腿导致负载升高。• 若负载>4(比如负载5),就像5个人排队但只有4个收银台,队伍会越排越长,系统会变慢。• 比如4核CPU(4个收银台),负载≤4时,排队人数没超过收银台处理能力,算正常;• CPU使用率:收银台正在处理结账的效率(比如1个收银台1分钟能结3单)。
2025-06-17 15:01:30
184
原创 What is Redis cache penetration? And what is Redis cache breakdown?
What is Redis cache penetration?It means that the data requested by the client does not exist in the cache, and also does not exist in the database. As a result, the request directly bypasses the cache layer and reaches the database layer, putting pressur
2025-05-11 08:40:54
492
原创 Java实习生也么找实习工作
说说我们公司的实习生要求最低要求会java语言的用法,框架略懂就行,会一些基础的增删改查,sql基本语法要懂,剩下的没有强制要求,善于学习。那么怎么找实习工作呢,现在常用的招聘网站比如猎聘,智联,boos直聘,拉钩网,等需求量都很大。最最重要的是自己做过一些项目哪怕是毕业设计,要展示出来你的技能,越多越好,简历简单明了,不要花里胡哨,技术点写全,每个技术点写的熟练度要对应起来等等 持续更新中
2022-12-13 21:24:10
1172
原创 idea常用快捷键持续更新
相当于eclipse的ctrl+shift+R,输入类名可以定位到这个类文件,就像IDEA在其他的搜索部分表现一样,搜索类名也能对你所要搜索的内容多个部分进行匹配,而且如果能匹配的自己写的类,优先匹配自己写的类,甚至不是自己写的类也能搜索。但是在这里,Ctrl+B或Ctrl+鼠标左键只能看见Map接口抽象方法put的定义,不是我们想要的,这时候Ctrl+Alt+B就可以查看HashMap的put方法。其中Ctrl+F是在本页查找,Ctrl+Shift+F是全局查找。1、Ctrl+N 按名字搜索类。
2022-12-01 09:41:45
545
原创 Gradle的发型版本下载链接
https://services.gradle.org/distributions-snapshots/
2022-03-21 17:50:13
2086
原创 redis内存占用分析笔记
127.0.0.1:0>info memory"# Memoryused_memory:1670920 由 Redis 分配器分配的内存总量,以字节(byte)为单位used_memory_human:1.59M 以人类可读的格式返回 Redis 分配的内存总量used_memory_rss:1633992 从操作系统的角度,返回 Redis 已分配的内存总量(俗称常驻集大小)。这个值和 top 、 ps 等命令的输出一致。used_memory_rss_human:1.56Mused_m
2022-03-14 18:41:48
964
原创 mysql8行级锁学习
mysql8行级别锁是锁在索引上的,如果sql语句没有用到索引,则会锁表;例如:session1执行如下sql语句:set autocommit=0;select * from tab_no_index where id = 2 for update;id列没有索引;session2执行如下sql语句:select * from tab_no_index where id = 1 for update;则会一直处于等待中,因为没有索引,虽然查询的不是一行数据,但会触及表级锁,sessio
2022-02-15 17:01:08
784
原创 mysql调优参数备忘
优化参数set profiling=1;select version();set global slow_query_log=1;set global long_query_time = 1;set global max_connections=1000;set global innodb_buffer_pool_size = 6442450944;# 4227858432set global wait_timeout=180;set global interactive_timeou
2021-11-29 14:31:38
389
原创 批量插入数据推荐写法
SqlSession session = sessionFactory.openSession(ExecutorType.BATCH);for (Model model : list) { session.insert("insertStatement", model);}session.flushStatements();与默认的 ExecutorType.SIMPLE 不同,该语句将准备一次并为每条要插入的记录执行。从资料中明白,默认执行器类型简单,会为每次创作创造一个新的预设语句,
2021-11-21 08:54:39
988
原创 datagrip 设置mysql慢查询时间
设置# 单位为秒set global long_query_time = 1;注意设置不生效时,需要重新开启一个窗口,然后即可生效;查询show variables like 'long_query_time';
2021-09-23 10:40:25
1312
原创 spring注入bean失败
Caused by: org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name ‘appSignCheck’: Bean with name ‘appSignCheck’ has been injected into other beans [appSignCheck] in its raw version as part of a circular reference,
2021-08-27 10:40:34
696
原创 springboot启动失败
Exception in thread “main” java.lang.NoClassDefFoundError: org/springframework/core/metrics/ApplicationStartup原因是由于springboot包和spring包冲突了,删除spring包即可
2021-08-25 18:06:56
330
原创 摘要、对称加密、非对称加密
摘要MD(Message Digest):消息摘要SHA(Secure Hash Algorithm):安全散列MAC(Message Authentication Code):消息认证码对称加密DES(Data Encryption Standard):数据加密标准,速度较快,适用于加密大量数据的场合。3DES(Triple DES):是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高。AES(Advanced Encryption Standard):高级加密标准,是下一代的加
2021-08-11 10:40:00
434
原创 thymleaf页面写for循环的时候报错元素内容必须由格式正确的字符数据或标记组成
thymleaf页面写for循环的时候报错元素内容必须由格式正确的字符数据或标记组成解决办法使用如下代码解决/*<![CDATA[*/ for (let i = 0; i < loopCount*1; i++) { }/*]]>*/-END-如果你喜欢我的分享,欢迎关注微信公众号 java学长分享技术干货!悄悄告诉你免费赠送重磅互联网架构师教程,提升职场技术水平!...
2021-08-04 11:02:19
356
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人