- 博客(90)
- 收藏
- 关注

原创 Mybatis框架梳理——更新中
如果让我聊一聊mybatis,我该怎么说呢?开发中时时刻刻都在用它,此时此刻,脑海中却只浮现ORM框架通过MapperProxy动态代理完成mapper接口的查询,还有呢?哪怕能说出来,应该也是磕磕巴巴。我想起了学生时代做题的日子,看到题目就知道它考哪个点,从哪些刁钻的角度去考…大抵还是不熟悉或者对mybatis没有清晰的脉络,所以当需要对外产出的时候,才会东一点西一点,想到哪里说哪里。这也是我写博客的本意,希望通过不断地反问和梳理,加深自己对某个技术点的理解。后面会一个模块一篇文章分别去记录。
2024-10-03 19:31:47
1063

原创 IDEA插件——终端操作小工具
执行命令时会优先检测并给出配置引导:具体配置见插件主页说明:除了集中管理命令,我竟然每天用这个记录代办和开发任务。。。。。。好了,该去领散装月饼了。
2024-09-13 17:19:35
810
原创 Springboot配置方式和优先级
Springboot的配置来源包括 :Java系统属性环境变量例如环境变量SERVER_PORT=8081会映射到server.port属性外部配置文件配置文件配置优先级通过调试源码可以看出,依次降低。
2024-10-25 20:50:57
498
原创 Mybatis-plus做了什么
聊一下mybatis-plus。你是否有过疑问,它为啥会被越来越多人接受。在Mybatis已经足够灵活的情况下,它又做了什么事情。
2024-10-08 21:00:07
1634
原创 github——指标统计
github-readme-stats是一个可以统计指定用户github指标的项目。可以使用此项目统计自己的github,用于首页展示。
2024-10-08 17:00:00
654
原创 github项目学习笔记
ruoyi-vue-pro它是一款开源可商用的后台管理框架,借鉴了另一个项目ruoyi。如今已延伸出精简版、cloud等多个版本。用到的技术栈贴近实际,很适合用来学习。
2024-10-07 23:58:55
465
原创 github项目——howtocook
66.7K stars,深的程序员喜爱!甚至搞了个专门的域名网站。github偶然发现的一个项目,无关编程 ,只教你做菜😂。菜品还有专门的配图和难度系数,就说6不6吧。参与其中,简历就可以写上。
2024-10-07 21:19:44
327
原创 Mybatis——SqlSessionFactoryBuilder工厂模式
说一下我的理解:设计模式是对项目工程中代码结构的设计和抽象,有了这种设计和抽象,系统才有了扩展性。记住了模式的角色、组成、UML类图,只是记住了模式的形,类似武术中的拳法套路。模式的意则是一个不断学习和加深理解的过程,通过对比优秀框架中相应设计模式的具体运用来加深理解,最终融入自己的设计和编码习惯中。当然,如果关注点是代码能运行,也无可厚非。
2024-10-07 14:52:03
690
原创 2.4Mybatis——缓存机制
讲真,Mybatis缓存这块的记忆模糊了。刚好此时写测试案例出现一个BUG,就以这个问题作为嵌入点再来过一遍。未进行任何配置,以为会缓存第一次查询,但这里SQL执行了两次查询,没有走Mybatis的缓存策略。分析一下问题出在哪里。
2024-10-06 23:55:07
692
1
原创 2.3MyBatis——插件机制
插件机制是一款优秀框架不可或缺的组成部分,比如spring、dubbo,还有我们要聊的Mybatis等等。所谓插件,通俗一点说,就是框架提供了一个入口,允许你通过实现框架提供的扩展接口,来进行功能增强。比如spring的前置处理器允许你在Bean创建的过程中添加自定义逻辑。具体到Mybatis框架,它的核心是ORM和SQL的映射。那么映射成功的SQL在具体执行的过程中,存在许多时机,比如参数处理阶段,SQL语句处理阶段,SQL执行阶段,返回结果的处理阶段等。
2024-10-05 20:55:01
1292
2
原创 github项目——gpt-pilot自动创建应用
今天扯一扯在github上看到的一个项目gpt-pilot,声称“首个AI程序员”。本来打算玩一下,结果需要配置大语言模型的API,并且只支持OpenAI和claude(Qwen呢)。有没有玩过的老哥说一下好不好用!!(对了,为啥博客现在都没有人留言交流了。。。
2024-10-04 21:41:27
1105
原创 2.2Mybatis——代理与SQL映射
Java中非静态方法的运行需要实例对象才能运行(即对象点方法),Mybatis中的Mapper都是接口,也没有实现类,那么接口中的方法怎么就被调用执行了呢?这是当时用Mybatis时最困扰我的一个问题,搜的资料博客中,大多来一句“动态代理”一笔带过。留我一人风中凌乱,难道"动态代理"四个字这么形象生动、易于理解吗…也因为这个疑问,了解了代理模式,动态代理,以及Mybatis如何使用动态代理完成mapper接口方法的调用。
2024-10-04 18:12:50
1270
原创 2.1MyBatis——ORM对象关系映射
概括的说,MyBatis中,对于映射关系的声明是由开发者在xml文件手动完成的。比如对查询方法而言,你需要显式声明ResultType或ResultMap,这里其实就是在定义数据库字段和Java属性之间的映射关系。
2024-10-03 23:58:16
979
原创 github项目--crawl4ai
记得第一次用soup的时候,对于只用过Java sax解析xml的我来说,soup真的太方便了。github上这个项目,没记错的话,昨天涨了3000多的star,今天又新增2000star。一款抓取和解析工具,简单写个demo感受下。控制台按照我们定义的schema输出了标准了JSON数据。将数据放入html模版,通过邮件每日发送。输出的还是html,但对原始页面做了处理,比如移除不相关元素,动态元素,简化html结构。这里我们使用crawl4ai抓取github每日趋势,每天通过邮件发到自己邮箱。
2024-10-01 22:58:26
1083
原创 IDEA激活失败--脚本分析
由于CE版本的pycharm不支持django,所以网上搜了一个教程。教程信誓旦旦,言之凿凿,结果激活失败,看一下脚本,顺便巩固一下shell🤪
2024-10-01 13:20:35
1647
1
原创 ELK--收集日志demo
之前项目多实例部署的时候,由于请求被负载到任意节点,所以查看日志是开多个终端窗口。后来做了简单处理,将同一项目的多实例日志存入同一个文件,由于存在文件锁的竞争,日志内容混乱,性能差且效果也不好。一直想试试ELK来着,简单做了下集成的demo。不用来源的数据可以单独定义一个管道配置来收集和处理日志数据。这里定义了两个测试用例,一个用来收集docker日志,一个用来收集Springboot日志。Springboot中调用接口,kibana中通过切换不同的命名空间进行快速的日志查询定位。
2024-09-30 22:22:52
646
原创 简历解析的疑问?
今天投简历的时候,发现某平台解析出来的线上简历内容缺失了几部分。不怕解析错误多,就怕解析错误少到难以察觉,解析之后人为检查不出来。改完之后我就在想,为啥会出错,简历解析的痛点在哪里呢?都2024年了,人们都在讨论AI如何取代人类的年代了,为什么简历这种内容量并不多的文件,解析还会出错呢?反正每一次更新简历,各个平台轮番手动修改,调整样式。如果是大的信息变动,想想都头疼。对于个别招聘岗位,需要临时调整简历内容,由于是PDF格式,又得去对应招聘网站内修改再导出。
2024-09-29 20:21:33
361
原创 JDK——java.util.function
最近java.util.function包用到的比较频繁,感觉很好用。系统整理一下,帮助快速回忆。
2024-09-29 13:53:06
920
原创 graphql--快速了解graphql特点
今天浏览博客时看到graphQL,之前在招聘网站上第一次接触,以为是图数据查询语言,简单了解后,发现对graphQL的介绍主要是用作API的查询语言,不仅限于图数据查询
2024-09-28 13:18:29
1580
原创 django使用笔记6--docker部署
由于服务器中python版本和依赖与本地开发环境不同,且centOS7中python及依赖安装更新较为麻烦,所以采用docker容器部署。多环境配置类似Spring中的多环境配置。线上版本因为和数据库都是容器部署,所以放在一个自定义网络下,通过容器名称访问。如果配置未加载,可查看.env是否存在,打印BASE_DIR当前路径是否正确。这里配置nignx的时候费了点时间,接口通了,但静态资源请求全部404。这里打包镜像后,可进入容器内部查看目录结构,例如:django后台管理接口,
2024-09-26 17:07:28
1146
原创 使用python搭建Web项目
python manage.py migrate ,默认的mysqlclient 连接mysql报错。使用mysql-connector-python连接mysql。// 使用conda管理python环境。修改settings.py。
2024-09-25 19:53:03
539
原创 MQ的简单梳理
如果频繁出现消息堆积情况,一方面可以考虑长久性的增加消费节点,另一方面可以考虑调整消费的模式,比如将push模式改为消费者从MQ主动pull,由消费系统自己控制pull的频率。
2024-09-24 17:21:44
249
原创 缓存的思考与总结
从内存中读取数据,从文件系统通过IO读取磁盘数据,两者在时间上存在较大差异,毫无疑问,从内存中读取数据相较于磁盘会更快,于是便有了缓存,很典型的以空间换时间的运用
2024-09-22 16:16:34
1591
原创 jekyll相关的技术点
如果你用过github的Pages功能(现在在Action功能中),或者gitee中的Pages,那么对于jekyll你一定不陌生。jekyll 是一个静态网站生成器,是基于 Ruby 的的一个gem
2024-09-21 18:41:09
513
原创 关于广告投放平台的设计
最近在看关于广告投放平台相关的设计,倒是没看到完整的案例介绍。整理一下收集的各种信息,假如需要设计一个广告投放系统,该怎么做?
2024-09-20 00:07:23
441
原创 广告投放术语
由于投放初期,竞品广告主所属领域相同,CTR 和CVR均来自行业大盘数据,所以影响ECPM值的因子就是出价,即出价高者被优先推荐.随着投放时间的增长,CTR和CVR被广告系统进行统计,此时,出价对ECPM的影响越来越小.有了实际的统计数据后, 假如A广告出价50,但点击和转化都为0,那么ECPM也为0,即广告平台没得赚;而B广告出价1,但有点击和转化,导致ECPM值比广告A的ECPM高,那么广告B会被优先推荐。想让广告平台优先推荐你的广告,就是提高ECPM值, 公式可以看出,决定ECPM的因子有三个.
2024-09-19 21:24:45
385
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人