自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(62)
  • 收藏
  • 关注

原创 @Transactional注解详解与应用

是Spring框架用于的关键元素。它允许开发者通过简单的注解来控制事务的边界,而无需编写具体的事务管理代码。用于指定一个方法或类在执行时需要进行事务管理。类级别方法级别尽管。

2024-06-25 10:59:09 578

原创 AI眼中IT行业未来的发展趋势

IT行业正处在一个前所未有的快速发展阶段,其影响力渗透到了全球经济与社会的每一个角落。

2024-05-16 10:14:10 374 1

原创 Spring配置文件简述

Spring框架的配置文件主要用于定义。Spring支持多种格式的配置文件,主要包括传统的XML配置文件和基于注解的配置,以及现代Spring Boot项目中更常用的properties或YAML格式的配置文件。

2024-05-14 11:33:12 477

原创 SpringFramework简述

Spring Framework是一个开源的企业级Java应用程序框架,由Rod Johnson创建,首次发布于2003年。Spring的核心理念在于简化企业级Java开发并提高其可测试性,它通过提供一个全方位的基础架构支持,帮助开发者关注于业务逻辑而非基础设施的繁琐细节。以下是Spring Framework的一些核心特征和组件: Spring简化了与数据库的交互,提供了JDBC、ORM(如JPA、Hibernate)和其他数据访问技术的支持,以及事务管理的集成。 Spring

2024-05-14 11:13:47 1192

原创 MySQL和MongoDB区别

MySQL与MongoDB作为两种不同的数据库系统,它们在设计哲学、数据模型、查询方式、事务支持、性能特点等多个方面存在显著差异。综上所述,选择MySQL还是MongoDB,应根据具体的应用场景、数据结构、性能需求以及对事务一致性的要求来决定。

2024-05-13 11:44:47 529 1

原创 简述redis事务

Redis事务提供了一种将多个命令打包,然后一次性执行的机制,以简化某些需要连续执行多个命令的场景。尽管Redis事务在设计上有一些局限性,它们仍能满足许多应用场景的基本需求。

2024-05-12 11:58:00 331

原创 简述Redis过期策略及内存淘汰机制

Redis的过期策略和内存淘汰机制是其管理内存、确保高效率运行的关键特性。

2024-05-12 11:50:40 396

原创 简述redis数据类型及应用场景

每种数据类型的选择应当基于具体的应用需求,比如是否需要排序、是否允许重复元素、是否需要执行集合运算等。Redis作为一种高性能的内存数据存储系统,提供了多种数据结构来满足不同场景下的需求。: 双向链表,可以做栈(LPOP/RPOP)、队列(LPUSH/RPOP)或实现发布/订阅模式。: 最基本的数据类型,可以存储字符串、整数或者浮点数等数据。支持原子性操作,如增、删、改、查。: 无序且不重复的字符串集合,支持集合运算如并集、交集、差集。: 用于存储键值对的集合,每个哈希可以存储多个字段-值对。

2024-05-10 10:22:36 376

原创 热点数据和冷数据(分层存储策略)

管理好热点和冷数据,对于优化系统性能、降低成本以及确保数据的有效利用至关重要。在设计存储架构时,通常会采用分层存储策略,将热点数据放置在高速存储层,而冷数据则放置在低成本的存储层。假如修改频率很高,但是又不得不考虑缓存的场景怎么处理?比如,这个读取接口对数据库的压力很大,但是又是热点数据。等是非常典型的热点数据,但是又不 断变化,此时就需要将数据同步保存到Redis。这个时候就需要考虑通过缓存手段,减少数据库的压力,比如我们的某助手产品的,缓存,减少数据库压力。

2024-05-10 09:36:01 420

原创 Redis简述

Redis是一个开源的,基于键值对(key-value)的数据结构存储系统,它可以用作数据库、缓存和消息代理。Redis以其高性能、低延迟和丰富的数据结构特性而著称,广泛应用于各种场景,特别是那些需要快速读写操作和高可扩展性的应用中。:Redis不仅仅支持简单的字符串键值对,还提供了等多种数据结构,以及等高级数据类型。每个比特位代表集合中的一个元素,值为1表示该元素存在,值为0表示不存在。位图非常适合于统计、去重计数、简单的布尔操作等场景,如用户活跃度跟踪、布隆过滤器等。

2024-05-09 09:52:52 902

原创 mysql优化(慢查询,索引,表结构)

选择使用JOIN操作还是子查询主要取决于查询的具体需求、数据量、表的关联程度以及你希望达到的性能效果。

2024-05-08 09:32:03 678

原创 通用SQL函数

通用SQL函数是指在多种SQL数据库系统中广泛支持的功能函数,它们可以帮助用户执行常见的数据处理和转换任务。这些函数大致可以分为几类,包括。

2024-05-06 11:30:41 162

原创 varchar 和char 的区别及应用场景

根据实际应用场景选择合适的数据类型是很重要的。如果字符串长度固定且较短,或者对存储空间不是特别敏感但对查询性能有较高要求,可以考虑使用 CHAR(例如:身份证号,手机号)。反之,如果字符串长度可变或者希望节省存储空间,VARCHAR 是更好的选择。是两种不同的数据类型,主要用于存储字符串。它们之间的主要区别在于存储方式、空间利用率、以及对数据处理的效率。VARCHAR: 变长字符串类型。定多少用多少,用不完拿空格填充。65,535 个字节。

2024-05-06 10:10:30 430

原创 数据库索引(Mysql)

索引并非是越多越好,创建索引也需要耗费资源,一是增加了数据库的存储空间,二是在插入和删除时要花费较多的时间维护索引尽量使用数据量少的索引。选择唯一性索引,唯一性索引的值是唯一的,可以更快速的通过该索引来确定某条记录。如果索引的值很长,那么查询的速度会受到影响。尽量选择区分度高的列作为索引区分度的公式是表示字段不重复的比例。为经常需要排序、分组和联合操作的字段建立索引。如果索引字段的值很长,最好使用值的前缀来索引。为常用作为查询条件的字段建立索引。尽量的扩展索引,不要新建索引。:带函数的查询不参与索引。

2024-04-29 17:24:18 611

原创 分割字符串问题记录(特殊符号识别问题)

除了上文提到的 "+" 符号之外,还有其他几个常见的符号在正则表达式中有特殊含义,当它们作为分隔符使用时,也需要进行转义。- 方括号用于定义字符类,直接在方括号外使用即可表示字面的方括号,但如果方括号内部需要表示范围或特殊字符,内部的转义规则适用。∗∗−表示字符串的结束位置,要匹配美元符号,使用‘)∗∗−表示字符串的结束位置,要匹配美元符号,使用。- 竖线代表“或”的概念,在正则表达式中用于分隔选项,要匹配竖线本身,使用。- 在正则表达式中,点(.)代表任意单个字符,要匹配字面上的点,需使用。

2024-04-29 08:33:27 155

原创 数据库锁介绍

最小化锁持有时间:尽可能快地完成事务,减少锁占用的时间。合理安排事务顺序:避免循环等待锁,减少死锁风险。使用适当的事务隔离级别:根据业务需求选择合适的事务隔离级别,平衡数据一致性和性能。行锁是数据库并发控制中的重要工具,理解其工作原理和应用方式对于设计高性能、高并发的数据库应用至关重要。表锁(Table-level Locks)简介:表锁锁定的是整个数据表,MyISAM存储引擎默认采用表锁,意味着只要有一个事务在某张表上持有了表锁,其他事务对这张表的所有操作(读写)都将被阻塞。评估并发需求。

2024-04-28 11:15:56 1070

原创 单一数据源转为多数据源快捷方法

适用于需要在同一个应用或服务中连接并操作多个数据库或数据源的场景。这种技术使得开发者可以在运行时根据不同的业务需求或执行环境灵活地选择使用哪个数据源,而不必在每次数据库操作时硬编码数据源信息。可以设置常用的数据库为默认值,在第三步添加注解时,不需要特别标注,到此即可顺利访问不同数据源下的目标数据库。开发过程中,需要访问不同的数据库,采用。只需要给用到从库的方法或类添加注解即可。

2024-04-28 09:13:52 156

原创 单表过大的优化方法

当数据量达到一定规模时,可以使用分布式数据库或数据库中间件进行水平拆分,将数据分散到多个数据库实例或多个表中。例如,用户表中既有用户的登录信息又有用户的基本信息,可以将用户表拆分成两个单独的表,甚至放到单独的库做分库。:定期将历史数据迁移到另外的表或者数据库,实现冷热数据分离,常用数据和历史数据分开处理,减少主表的数据量。:对于写入操作,可以将数据切分成多个小批次,然后逐批插入数据库,减少锁表时间,提高插入效率。:在满足业务需求的前提下,充分利用多核CPU的优势,通过多线程并行处理数据,加快处理速度。

2024-04-27 10:57:52 579 1

原创 drop、delete与truncate的区别和语法规则(DDL、DML、事务简述)

DDL 语句主要用于。

2024-04-27 09:37:42 873

原创 switch case 值 如何取一个范围

这种写法要求你的项目使用 Java 14 及以上版本,并且在编译器选项中启用了相应的语言特性。如果你的项目环境不满足这些条件,仍然需要使用传统的。标签后的值必须是一个具体的、固定的值,不能是一个范围。但是又需要多重判断,在不用if else的情况下,如何解决.从 Java 14 开始,引入了一个新的语言特性——语句来实现范围判断。

2024-04-26 14:00:24 574 2

原创 字符串简单运算(BigDecimal相关运算)

BigDecimal的加减乘除

2024-04-26 13:48:38 379

原创 SQL优化

6、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id from t where num=0。子查询的结果可能存在重复或错误的情况,而关联查询可以直接连接相关联的数据表,避免了数据的重复和错误。嵌套查询是子查询的一种形式,它们会增加查询的复杂性,并可能导致查询语句难以理解和维护。

2024-04-26 11:53:28 976 1

原创 使用Mybatisforeach循环添加字段和值失败问题记录

由于数据表字段非常多,使用foreach循环,key为数据库字段,value为要添加的值.字段中含有小数点的无法正常添加数据。直接将新增的sq拼接好去执行,解决字段不能正确识别,获取值失败的问题。注(反引号非常重要)

2024-04-18 16:37:55 252

原创 数据库查询,字段被断开问题记录

1.针对业务需求对数据表字段进行修改后,查询数据列表,采用JSONObject接受,数据库字段命名可能不规范(字段名中含有小数点)导致字段接受断开问题:如图所示。解决方案:不能改动数据库字段格式的前提下,将查询到的数据,判断value是否为HashMap,对符合条件的key进行拼接。由于HashMap在迭代过程中不支持删除和修改(会报错。),采用新的集合和JSONObject进行存储和返回。错误展示:从小数点处断开,形成新的map。

2024-04-18 16:13:16 359

原创 Spring和SpringBoot的区别

Spring是一个全功能的应用程序框架,提供了丰富的功能和灵活性,适用于复杂的企业级应用程序开发;而Spring Boot则是一个快速开发框枧,旨在简化Spring应用程序的搭建和开发,适用于快速开发和微服务架构。通常情况下,可以使用Spring Boot来快速搭建应用程序原型,而在需要更多定制化和复杂功能时,可以结合Spring框架进行开发。

2024-03-27 13:49:07 729

转载 java面经转载

Client Random、Server Random 和 Pre-Master。用这三个作为原始材料,就可以生成用于加密会 话的主密钥,叫“而黑客因为拿不到“Pre-Master”,所以也就得不到主密钥。为了保证真正的“完全随机”“不可预测”,把三个不可靠的随机数混合起来,那么“随机”的程度就非常高了,足够让黑客难以猜测。这里的“PRF”就是伪随机数函数,它基于密码套件里的最后一个参数,比如这次的 SHA384,通过摘要算法来再一次强化“Master Secret”的随机性。

2024-03-27 13:23:29 27

转载 Docker 夺命连环 15 问

veth设备总是成对出现的,它们组成了一个数据的通道,数据从一个设备进入,就会从另一个设备出来。容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用宿主机的IP和端口.此时容器不再拥有隔离的、独立的网络栈。新创建的容器不会创建自己的网卡,配置自己的IP,而是和一个指定的容器共享IP,端口范围等。Docker将veth pair 设备的一端放在新创建的容器中,并命名为eth0(容器的网卡),另一端放在主机中, 以veth*这样类似的名字命名,并将这个网络设备加入到docker0网桥中。此模式拥有所有端口。

2024-03-27 13:07:20 84

原创 easyExcel导入踩坑记录

easyExcel导入数据不全,数据缺失问题记录

2024-03-06 11:34:34 500

原创 使用document.querySelector()搜索时,点‘.‘和井号‘#‘的用法

document.querySelector()搜索时--> .和#的用法

2023-10-24 09:25:47 913

原创 前端获取随机数公式解析

前端,获取随机数

2023-10-24 08:59:52 197

原创 Swagger新写的模块在页面不显示以及点击接口展开卡死问题

Swagger找不到新写的模块和Swagger页面卡死

2023-09-06 10:15:53 1135

原创 idea背景图

idea背景图,娱乐自己,给工作增添一点乐趣

2023-08-29 16:51:43 102

原创 单字段查询,用另一个字段进行排序,用distinct关键字去重和不去重的查询结果对比分析

distinct关键字和orderby联合使用的硬性要求,以及orderby相关知识,临时表相关知识

2022-12-22 11:26:32 1639 2

转载 kafka详解

Kafka:分布式消息中间件Kafka 来做消息通信。分布式消息系统开发人员必备的技能

2022-12-21 15:59:21 6196

原创 List和Map多层嵌套,采用Object简化

查询数据库,name去重,数据以集合形式展示

2022-12-20 17:22:04 1058

原创 根据时分秒查找具体日期数据

mysql数据查找

2022-11-29 09:29:31 184

原创 java进阶学习--第五天

二分查找,冒泡排序,递归

2022-07-07 20:14:41 182

原创 内部类和匿名内部类

匿名内部类初学习

2022-07-05 17:18:10 466

原创 java进阶第二天---多态,抽象类,接口

java基础

2022-07-03 12:06:35 202

原创 java进阶--

继承

2022-07-03 11:41:36 174

java研发军团面试手册

javaoop面试题100道/集合.泛型24道/异常8道/IO与NIO15道/反射11道/序列化11道/注解2道/多线程&并发108道/JVM87道/MYSql 83道/redis50道/Memcached24道/MongDB95道/Spring131道/SpringBoot92道/SpringCloud35道/RabbitMQ32道/Dubbo40道/MyBatis28道/ZooKeeper49道/数据结构9道/算法21道/ElasticSerach24道/Kafka25道/微服务50道/Linux48道

2024-03-27

Java集合.pptx

java分享ppt--集合.简述何为集合及分类(单列集合和双列集合及其详细分类与区别),详细讲述Set集合,List集合和Map集合的特点,Set和List对比. 针对单一类型的集合,从特点、原理、应用场景、源码分析四个方面进行说明 结合卡通人物匹配小游戏来说明Map集合key和value的关系

2024-01-05

空空如也

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

TA关注的人

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