- 博客(33)
- 收藏
- 关注
原创 LangChain-ChatChat+Ollama+DeepSeek 构建RAG本地知识库
使用 LangChain-ChatChat+Ollama+DeepSeek 构建RAG本地知识库
2025-01-23 13:42:32
9735
14
原创 @AssetTrue使用小结
@AssetTrue常用于属性(Field)和方法上,用来校验属性(Field)和方法返回值是否为True,当属性为List时,则可使用 @AssetTrue.List
2024-04-08 11:29:46
436
原创 ThreadLocal及InheritableThreadLocal基本原理及注意项
ThreadLocal是如何做到在线程中存储本地变量的。InheritableThreadLocal又是怎么做到继承机制的。
2022-06-24 19:06:07
1625
2
原创 MySQL InnoDB锁机制及锁超时案例分析
当表有多个索引的时候,不同的事务可以用不同的索引来锁定不同的行。另外,不论是使用主键索引,唯一索引或者普通索引,InnoDB都会使用行锁来对数据加锁。但即便在条件中使用了索引字段,具体是否使用索引,使用哪个索引,是由MySQL执行计划来判断的。
2021-12-02 10:23:12
973
原创 MySQL查询时区分大小写
更新表字段编码格式alter table `tableName`to character set utf8mb4 COLLATE utf8mb4_bin;COLLATEutf8mb4_bin 的意义为:*_bin: 表示的是binary case sensitive collation,也就是说是区分大小写的,如COLLATEutf8mb4_bin*_cs: case sensitive collation,区分大小写,如 COLLATEutf8mb4_cs*_ci: case...
2021-11-09 16:59:35
1826
1
原创 Java Map移除值为空的元素
map.entrySet().removeIf(entry -> Objects.isNull(entry.getValue()));
2021-11-02 10:50:14
3428
1
原创 关于redis做秒杀库存扣减的生产实践及思考
近期组员接手了一个领券的业务,涉及到了对券批次库存的扣减操作,在多次尝试优化后压测起来仍有一些性能问题,由于接近deadline,于是自己也尝试上手优化了一下。使我对日常在论坛看到的redis秒杀库存的实现有了进一步的认知。...
2021-09-06 16:05:59
4248
原创 记一次FastJson使用不当导致频繁Full GC排查
具体原因为:https://www.cnblogs.com/liqipeng/p/11665889.html与这篇文章的情况类似,可以直接按这篇文章的解决方案进行调整,此处只记录下排查过程。 近期,测试压测某个查询接口时,发现压测的开始一段时间TPS比较稳定,在压测进行多了几次后,TPS开始出现巨大波动。 进服务器利用TOP命令查看机器基本情况,发现业务层CPU的占用已经达到93%,但数据库层的CPU占用却仅在25%,说明数据库压力并不大,而这个业务只是单纯的查询用户是否处于黑名单状态...
2020-08-22 20:51:08
2087
1
原创 @Transaction(rollbackfor=Exception.class)的原因
rollbackfor默认是RuntimeException,声明为Exception.class可以扩大异常回滚范围。
2020-06-22 21:43:15
394
原创 记一次利用TOP命令排查压测问题经过
梦开始的地方 近期,负责的接口开始上压测环境,第一次接触压测,对能压到多少TPS并没有多少概念。然而结果还是十分出乎意料,“单接口TPS100+左右,并发50,100,200的结果基本稳定,接口请求有点慢,而且CPU占用率很异常,四核CPU都跑满了,不是很合理,排查下什么原因。”测试如是说。 询问了下组长上一版的时候其他接口的压测结果,组长回复不至于这么慢。于是开始排查自己代码的问题。排查代码问题 Review代码。首先想,是不是自己的代码有问题,将代码发给有压测经验...
2020-06-14 21:38:59
1431
2
原创 MySQL事务问题排查语句
查询当前事务隔离级别select @@tx_isolation;查询当前执行中事务select * from information_schema.innodb_trx;*************************** 1. row *************************** trx_id: 113963 ...
2020-06-13 16:03:53
911
原创 关于交易类业务的一些注意点
交易系统往往要和多个系统进行对接,目前对接过程很难做到事务的控制操作(我成功了,我回调了你,你执行失败了)。所以要做到失败的补偿:重试、失败通知、失败记录、订单号记录、完整的日志链跟踪。 其次,是与银行对接的问题:金额到账延迟,失败重试超时,重复请求查询结果超次数,同一业务下多个接口调用无法回滚。像金额到账延迟还不算太大的问题,但像失败重试超时这些,就很容易导致出现大的问题。 失败...
2019-09-10 17:01:55
438
原创 @Value中冒号的作用
先说明冒号的作用 :可以设置默认值@Value中可以使用@Value("${hello:defaultValue}")private String hello;若找不到属性值hello,那么就会默认赋值 defaultValue
2019-04-09 14:51:51
18605
原创 Excel导入导出——学习笔记
利用Poi进行Excel导入导出,在SpringBoot框架下进行测试,并使用了Bootstrap-fileinput作为前端上传组件作为参考,下载采用原生ajax下载形式,因为一直忘记前端下载怎么写还有后端怎么设置Request-Header,所以提供一个整个前后端的思路,以后方便进行查阅!
2019-03-27 16:04:10
612
原创 RocketMQ学习笔记——Hello World
为什么要使用RocketMQ这个问题也可以是为什么要使用消息队列,一个东西的诞生,必然是业务的需要。消息队列的主要作用有:削峰填谷(主要解决瞬时写压力大于应用服务能力导致消息丢失、系统奔溃等问题) 系统解耦(解决不同重要程度、不同能力级别系统之间依赖导致一死全死) 提升性能(当存在一对多调用时,可以发一条消息给消息系统,让消息系统通知相关系统)比较容易理解的作用有秒杀系统,当大...
2019-03-26 14:50:50
506
原创 SpringBoot——JPA学习笔记
前言使用过Hibernate的同学应该知道,Hibernate的作用就是面向对象写SQL,Hibernate要求我们尽量关注与对象之间的关系,封装底层的数据库,用对象之间的映射关系去建立表之间的联系。而JPA与Hibernate十分相似,也是可以利用对象来直接操作数据库。它只需要极其简单的几个类就可以完成对一个对象的CURD操作。具体如何简单,且看接下来的步骤。引入JPA依赖...
2019-03-26 14:12:33
325
原创 如何通过Maven的Tomcat插件运行Web工程
去tomcat官网http://tomcat.apache.org/,左侧栏Apache Tomcat下的Maven Plugin,点进去选择最新版本Version 2.2通过介绍可知,使用tomcat的maven插件有两种配置方式:第一种:在pom.xml文件的<build></build>中加入如下配置: 1 <pluginManagement> 2 ...
2018-04-30 13:30:35
337
原创 SpringMVC 跨域访问
需Spring版本为4.2以上在Controller上注解 @CrossOrigin(origins="*")或在web.xml中配置<servlet> <servlet-name>SpringMVC</servlet-name> <servlet-class>org.springframework.web.servl...
2018-03-23 19:53:08
267
原创 Freemarker获取RequestContextPath
在开发中,我们需要获取到requestContextPath来使得导入的css或js不因请求路径变化而导致404从而致使导入失败。在配置SpringMVC FreeMarker视图解析器(FreeMarkerViewResolver)时,进行如下配置 <!-- FreeMarker视图渲染器配置 --> <bean class="org.springframewo...
2018-03-23 19:49:53
2290
原创 Mysql查询今天,昨天,最近一周语句
今天: select * from `article` where to_days(`add_time`) = to_days(now()); 昨天: select * from `article` where to_days(now()) – to_days(`add_time`) 查询近7天的信息记录: select * from `article` wher
2018-02-27 18:01:07
382
原创 maven自动部署到远程tomcat教程
使用maven的自动部署功能可以很方便的将maven工程自动部署到远程tomcat服务器,节省了大量时间。 本文章适用于tomcat的7.x ,8.x, 9.x版本。 1,首先,配置tomcat的manager 编辑远程tomcat服务器下的conf/tomcat-users.xml,在末尾增加(其实只要拉到文件末尾,去掉注释改一下就可以了) role rolename="m
2018-02-27 17:57:27
273
原创 血与泪的教训: 中文乱码问题整合(Java)
中文的字符编码集有:GB2312,GB18030,UTF-8(适用于中文,但偶尔会出错,前面两个比较有保障)Html页面乱码问题在标签中设置或 如图(任选一种,图片只为展示)修改html文件编码格式查看是否使用了springmvc+freemaker,若使用了这两者,请往下看。后
2017-09-23 22:33:41
495
原创 血与泪的教训: JavaWeb中文乱码问题整合
中文的字符编码集有:GB2312,GB18030,UTF-8(适用于中文,但偶尔会出错,前面两个比较有保障)Html页面乱码问题在标签中设置或 如图(任选一种,图片只为展示)修改html文件编码格式查看是否使用了springmvc+freemaker,若使用了这两者,请往下看。后
2017-09-23 22:29:05
8850
转载 MySql模糊查询like通配符使用详细介绍
MySQL提供标准的SQL模式匹配,以及一种基于象Unix实用程序如vi、grep和sed的扩展正则表达式模式匹配的格式。一、SQL模式SQL的模式匹配允许你使用“_”匹配任何单个字符,而“%”匹配任意数目字符(包括零个字符)。在 MySQL中,SQL的模式缺省是忽略大小写的。下面显示一些例子。注意在你使用SQL模式时,你不能使用=或!=;而使用LIKE或NOT LIKE比较操作符
2016-09-08 20:53:04
355
原创 JavaWeb学习路线
JavaWeb学习路线刚升上大二,发现周围的人很多都不知道Java基础学完要学什么,这里推荐一下个人的JavaWeb学习路线。。因为才刚大二,所以也请各位大大指出不足,错误之处。大致路线为: 了解html -》 学习MySQL(增,删,查,改) -》 JDBC -》JSP -》 Servlet -》 Filter -》 Listener(了解) -》 Struts2 -》Hibernate -》
2016-09-07 22:50:02
396
原创 JDBC连接MySQL数据库
JDBC连接Mysql数据库API:String database = "test";String driver = "com.mysql.jdbc";String uri = "jdbc:mysql://localhost:3306/" + database;String user = "root";String password = "1234";String sql = ""; /
2016-08-29 22:44:41
325
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人