自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(82)
  • 资源 (1)
  • 收藏
  • 关注

原创 使用MyBatis-plus自动生成实体类和业务代码

使用mybatis-plus自动生成业务代码

2024-04-07 09:59:07 467

原创 kafka排除zookeeper使用kraft的最新部署方案

kafka已经推出了kraft来管理集群了,在新的部署方案中可以省去zookeeper服务的安装部署

2024-02-03 17:39:19 1189

原创 实体类和Map类型相互转换

我们将对象数据存入redis中的hash结构时,需要将实体类的对象字段转换为hash结构的字段,不论是jedis客户端提供的hset方法还是redisTemplate提供的putAll方法,都可以通过map数据结构直接将键值对存入redis的hash中,所以有必要研究一下如何将实体类转换为map对象以及将map对象转换为实体类。上面的代码展示了如何将java对象转换为map,map的键为java实体类的字段名,值为字段对应的值,这里把时间类型的数据按照格式序列化为字符串。

2024-02-02 17:00:43 1000

原创 redis配置信息整理

redis部署分为几种方式:单机、哨兵(主从)、集群。

2024-02-01 15:17:18 419

原创 MySQL启动报错:Can‘t start server: Bind on TCP/IP port: Permission denied

这种修改方式需要重启服务器才能生效,如果不想重启服务器就生效配置,可以在命令行执行。

2024-01-31 15:06:58 772

原创 java中实现事务的两种方式:编程式事务和声明式事务

涉及到与数据库交互就必须会用到事务,如果一个方法中需要用到事务的地方没有使用事务就会造成数据不一致的风险,进而导致比较严重的bug,比如扣款时,账户的余额已经进行了扣减但是相应的订单没有生成,这种涉及账目的问题如果不使用事务进行一致性控制后果会很严重。在项目开发中,事务又可以分为单体事务和分布式事务,对于分布式系统要实现事务会比较复杂,有时候需要引入第三方系统控制一致性;而传统的单体应用就比较容易实现事务,尤其是使用到spring框架开发项目事务使用会更容易。

2024-01-31 13:50:27 1513

原创 使用HttpServletRequestWrapper解决web项目request数据流无法重复读取的问题

在做web项目开发时,我们有时候需要做一些前置的拦截判断处理,比如非法参数校验,防攻击拦截,统一日志处理等,而请求参数如果是form表单提交还好处理;对于json这种输入流的数据就会有问题,统一处理如果读取了数据流就会将流进行关闭,这就会导致接下来的业务处理无法读取数据流。封装成这个类就是为了解决需要重复读取输入流的地方就使用这个包装类替换原有的request对象。

2024-01-26 15:48:06 780

原创 Linux系统配置网卡信息

还有一种情况是通过ifconfig命令可以查看到网卡,但是在网卡目录中没有对应的配置文件,这时候就需要自己手动添加一个配置文件,手动添加配置文件可以通过已有的配置文件复制一份修改配置文件名和文件内容实现,这里面最主要的一个内容是网卡的UUID字符串,我们可以通过下面的命令查看。网卡一种是使用动态IP,另外一种是分配静态IP,动态IP的地址有可能改变,在线上环境一般不会使用。要配置网卡,首先需要查看系统中的网卡,可以通过命令。是两个网卡的名称,要配置网卡就是配置目录。上面就是当前系统中的所有网卡,其中。

2024-01-25 10:43:05 336

原创 应用重启脚本

springboot应用重启脚本

2024-01-19 14:53:05 409

原创 centos中安装nfs实现服务器文件共享

简单介绍nfs在centos中的安装和使用

2024-01-18 09:10:49 657

原创 springboot升级到3.2导致mybatis-plus启动报错

升级springboot引起mybatis-plus报错,需要升级mybatis版本解决问题

2023-12-16 12:06:20 544 1

原创 springboot升级到3.2redis配置变化导致连接失败

升级springboot导致redis配置变化,自定义的配置信息无法加载导致错误

2023-12-16 11:54:13 765 1

原创 redis在linux中安装部署

介绍了redis部署方案,单机模式、主从模式、哨兵模式和集群模式,通过原理和实操让用户了解不同模式的适用场景

2023-12-14 19:55:46 295

原创 使用make编译安装时出现错误:fatal error: jemalloc/jemalloc.h: No such file or directory

源码安装失败后重新编译出错的解决

2023-12-13 17:48:12 313

原创 使用aop实现日志统一管理

使用aop实现方法进入和返回时记录日志,同时记录方法执行耗时

2023-12-13 11:40:01 93

原创 使用过滤器Filter实现请求拦截

简单介绍Filter过滤器的使用,如何使用过滤器实现请求拦截以及配合注解方式实现请求拦截

2023-12-12 15:57:15 320

原创 在项目中通过注解+拦截器实现权限控制

简单介绍通过使用注解+拦截器(HandlerInterceptor)方式实现请求拦截,身份验证

2023-12-12 11:42:25 78

原创 springboot中使用aop实现方法拦截处理

简单介绍aop的使用方式,使用注解实现方法拦截

2023-12-12 10:31:15 260

原创 springboot中优雅实现异常拦截和返回统一结构数据

简单介绍在springboot中如何优雅的实现接口返回统一的数据结构,对业务系统中的异常进行拦截并返回友好的提示

2023-12-07 19:39:03 583

原创 redis中使用事务保护数据完整性

介绍在redis中使用事务保证数据的安全,避免由于多线程更新导致脏数据

2023-12-06 18:49:11 186

原创 redis中使用pipeline批量处理请求提升系统性能

介绍redis中使用pipeline减少客户端与服务端数据传输次数,提升系统性能

2023-12-06 13:51:47 298

原创 io.lettuce.core.RedisCommandExecutionException: ERR EXEC without MULTI

出现上面这个异常的原因是在执行redis事务时,执行exec命令时没有检查到multi命令;这是因为redis需要所有命令都在一个连接上提交才能判断到命令是否执行,而默认使用连接池提交命令时不能保证所有命令都在一个连接上提交。上面代码还需要注意事务方法不能在同一个类内部调用,@Transactional 注解需要代理才能生效,否则事务还是不生效,上面的异常依然会抛出。上面这种处理事务方式不太推荐,在redisTemplate中建议使用SessionCallback实现事务功能。

2023-12-06 10:59:58 427

原创 redis中使用lua脚本处理业务逻辑

介绍在redis中使用lua脚本方法,并且介绍redisTemplate和jedis中使用lua脚本

2023-12-05 19:24:29 345

原创 json反序列化时泛型处理

分别介绍fastjson、jackson、gson在反序列化数据时需要处理泛型的使用方式

2023-12-04 19:49:31 1264

原创 json序列化时Long类型转换为String类型

对象序列化为json时Long类型转换为String类型,避免不同语言处理数据时导致的精度丢失

2023-12-01 00:10:14 1950

原创 通过lua脚本在redis中处理json数据

简单介绍redis中如何使用lua脚本完成json数据的更新

2023-11-30 19:11:00 974

原创 org.springframework.web.multipart.MultipartException异常

上传文件出现MultipartException异常

2023-11-28 09:21:10 494

原创 java中使用CompletableFuture实现异步编程

介绍CompletableFuture常用的api方法,使用CompletableFuture实现异步编程

2023-11-28 09:03:47 89

原创 在springboot中实现WebSocket协议通信

介绍在springboot中使用websocket实现服务端与客户端的通信,简单介绍了一下在使用过程中会遇到的一些问题以及要注意的事项

2023-11-22 14:57:34 197

原创 使用netty实现WebSocket协议通信

介绍netty实现websocket协议,实现服务端和浏览器双向通信

2023-11-21 20:09:06 573

原创 java中stream常用api介绍

简单介绍了一下java中的stream流操作的相关api方法,通过示例代码演示了中间方法和终结方法的使用

2023-11-21 14:39:44 83

原创 使用DelayQueue实现延时队列的功能

通过DelayQueue实现应用内的延迟队列功能,实现延时消费数据处理业务逻辑

2023-11-17 15:14:13 64

原创 数组、list、set、map集合之间相互转换

介绍在几种集合之间相互转换的api

2023-11-16 16:27:58 330

原创 集合对象的几种初始化方式

介绍集合的几种初始化方式,在工作中可以自己选择合适的方法来使用

2023-11-16 11:20:43 590

原创 httpClient超时时间详解与测试案例

介绍apache的httpclient在发送http请求时需要注意的几个超时时间,通过测试代码验证几种异常发生的场景以及注意事项

2023-11-15 19:22:32 4070

原创 在java中使用javascript脚本

介绍在java中使用脚本引擎嵌入javascript代码运行,总结了相关api的调用,通过示例代码让知识点通俗易懂

2023-11-10 13:52:17 2959 1

原创 httpclient工具类封装

分享基于apache的httpclient工具类封装,可以在项目中直接引入HttpUtils当做工具类使用

2023-11-09 11:24:03 318

原创 RestTemplate配置和使用

介绍了在springboot中如何配置restTemplate进行http请求,里面包含了原生方式的配置,以及将它与apache中的httpclient进行整合,包含使用的示例代码

2023-11-08 22:31:35 1000

原创 springboot中多数据源配置和使用

简单介绍在springboot中多数据源的配置和使用,包含完整的代码demo示例

2023-11-08 10:59:21 152

原创 json序列化时隐藏返回字段

在对象进行json序列化时如何忽略不需要序列化的字段

2023-11-07 14:39:05 350

空空如也

空空如也

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

TA关注的人

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