springboot
文章平均质量分 93
抢老婆酸奶的小肥仔
一直在java的浪潮中流浪,一直未找到依靠的港湾
展开
-
SpringBoot之@ConditionalOnProperty注解
在平时业务中,我们需要在配置文件中配置某个属性来决定是否需要将某些类进行注入,让Spring进行管理,而@ConditionalOnProperty能够实现该功能。@ConditionalOnProperty:根据属性值来控制类或某个方法是否需要加载。它既可以放在类上也可以放在方法上。原创 2023-04-24 15:29:03 · 4086 阅读 · 0 评论 -
SpringBoot通过ip获取归属地,你应该知道的几种方式。
Hi,大家好,我是抢老婆酸奶的小肥仔。在日常我们逛网站的时候会发现我们登录后会出现归属地信息,例如:我在广州登录会显示广东广州,有些更加精确的会显示到区县。那么我们来看看有哪些方式来获取归属地信息?今天我们来聊一聊。原创 2024-04-03 13:57:52 · 1557 阅读 · 1 评论 -
SpringBoot-读取配置文件
在ideal中可以直接设置自定义配置文件目录。如图:编辑启动项,在【Environment variables】中添加【spring.config.location=classpath:/】或【】或【spring.config.name=java】,在【resources】下创建目录并添加配置文件。:表示自己重新定义配置文件的位置,项目启动时就按照定义的位置去查找配置文件,这种定义方式会覆盖掉默认的四个位置:表示在四个位置的基础上,再添加几个位置,新添加的位置的优先级大于原本的位置.原创 2023-04-26 09:38:38 · 1585 阅读 · 0 评论 -
SpringBoot+EasyExcel+Mybatis-plus实现通用Excel数据批量导入
基于java实现的快捷、简洁、解决大文件内存溢出(即OOM)不用考虑性能、内存等因素情况下,快速完成Excel的读、写等功能。从简介中,知道使用EasyExcel操作Excel时,我们只需要关注业务本身即可。原创 2024-03-26 16:44:01 · 1586 阅读 · 1 评论 -
SpringBoot+Druid你还只是用做数据库连接池吗?要不咱这么用用?
自定义一个回调类继承DruidPasswordCallback,并重写setProperties这个方法,该方法就是解析密码,设置密码的方法。/****/@Slf4j//构造方法,传入resourceLoader,用于读取RSA公私钥文件内容@Overridelog.error("Druid密码回调报错:" + e.getMessage());我是自定义了RSA的加解密,所以将公私钥放在了rsa_keys.txt文件,基于hutool定义了一个RSA加解密的方法。原创 2024-04-10 10:34:22 · 760 阅读 · 1 评论 -
SpringBoot+ThreadLocal+AbstractRoutingDataSource实现动态切换数据源
上述提到了ThreadLocal和AbstractRoutingDataSource,我们来对其进行简单介绍下。:想必大家必不会陌生,全称:thread local variable。主要是为解决多线程时由于并发而产生数据不一致问题。ThreadLocal为每个线程提供变量副本,确保每个线程在某一时间访问到的不是同一个对象,这样做到了隔离性,增加了内存,但大大减少了线程同步时的性能消耗,减少了线程并发控制的复杂程度。ThreadLocal作用:在一个线程中共享,不同线程间隔离。原创 2024-04-18 17:36:40 · 667 阅读 · 1 评论 -
拿来即用:SpringBoot+Minio+vue-uploader实现分片上传
Minio:一种分布式文件存储,具有高性能,轻量级,速度快,容错率高等特点,兼容亚马逊S3云存储服务接口,并可以作为一个独立的存储后端。minio提供了纠删码策略,即将数据进行切分,同时计算校验块,采用Reed-Solomon code将对象拆分成N/2数据和N/2奇偶校验块,假如有8块盘,数据则被分成4个数据块,4个奇偶校验块。即使这个对象丢了4块盘,数据依然可以进行恢复,因此即使我们一不小心删除了一些盘,也不用担心数据会丢失。原创 2024-03-27 17:08:05 · 2124 阅读 · 5 评论 -
SpringBoot通过手机号获取归属地,你应该知道的几种方式。
Hi,大家好,我是抢老婆酸奶的小肥仔。最近在做公司需求时,甲方一会提出根据IP获取所在地,一会又提出根据手机号获取手机号归属地。真的是:需求时时变,累死程序猿。甲方才是爸爸。之前已经实现过根据IP获取所在地的几种方式,大家可以参考我之前写的文章下:《SpringBoot通过ip获取归属地的几种方式》https://juejin.cn/post/7280745727176245307。那么今天我们来看看根据手机号有哪些方式可以获取归属地呢?废话不多说,开撸!libphonenumber:是谷歌提供的一款用于解原创 2024-04-02 09:21:48 · 1231 阅读 · 1 评论 -
Jackson-自定义注解及实现数据脱敏、枚举转换
在Jackson中使用来标注当前定义的注解为jackson注解。我们通过一个简单例子来看下。/****/上述注解实现了序列化时排列的顺序,以及不显示数值为null的字段。结合@JsonSerialize在数据进行序列化时,进行数据的脱敏。需求:用户信息在返回到前端时,对用户名,身份证号,手机号等进行数据脱敏。用户名:如果两个字时,只保留姓,后面为*,例如:张三,脱敏后:张*,超过三个字时,则保留前后两个字,中间使用*,例如:张小四,脱敏后:张*四身份证号:前后各保留四位,中间用四个。原创 2024-04-30 11:13:42 · 965 阅读 · 1 评论 -
SpringBoot + validator优雅参数校验,消除if-else
Hibernate Validate是Bean Validation实现的,内置了JSR303/JSR380中所有的constraint的实现,同时也额外提供了很多自定义的constraint。Bean Validation为JavaBean的验证提供了很多相关的元数据模型和API。/****/@Data@NotNull(message = "userId不能为空",groups = Update.class)@NotBlank(message = "用户名不能为空")原创 2024-04-16 15:14:14 · 649 阅读 · 1 评论 -
Jackson-你可能错过的最好用Json工具
jackson是一个简单且功能强大的基于java的应用库,它可以便捷的完成Java对象和Json对象的转换。高性能且稳定:Jackson低内存占用,对Json和对象的解析都很优秀流行度高:Jackson的社区活跃,有很多程序员在使用,同时Jackson是Spring中默认的JSON/XML解析器便于使用:在Jackso中提供大量的注解,例如我们常用的时间格式化注解@JsonFormat干净的json:创建JSON时干净、紧凑、体积小等特点。原创 2024-04-28 15:15:34 · 1306 阅读 · 1 评论 -
一文搞懂反射,还有谁不懂,直接甩给他
Hi,大家好,我是抢老婆酸奶的小肥仔。反射,在我们日常开发中无时无刻,被大量运用在框架代码和工具代码中,反射可以通俗点讲就是一个类的自我剖析,通过反射可以获取到这个类所有信息,包括:属性,属性值,方法等等。我们今天来初探下java中的反射,希望对大家有所帮助,开撸!原创 2024-05-11 14:05:33 · 1236 阅读 · 1 评论 -
定时任务还可以这么玩--基于SpringBoot中的ThreadPoolTaskScheduler实现动态定时任务
ThreadPoolTaskScheduler实现定时任务主要是通过对线程的管理来进行操作,添加任务时即创建一个线程,删除时即将该线程删除。因此在创建定时任务只需要创建线程就可以,在创建线程时,通过反射来获取对应的方法及传递参数。上述就是使用SprngBoot中的ThreadPoolTaskScheduler来实现定时任务,我们只要使用前端连接相应的接口就可以实现管理人员管理定时任务的功能。原创 2024-05-08 09:36:50 · 1120 阅读 · 4 评论 -
SpringBoot+Spring WebFlux响应式开发,实现打字效果
Spring WebFlux是实现响应式编程,基于Servlet3.x之后异步响应处理所提供的更简化的实现模式,该组件是一个重新构建的且基于Reactive Streams标准实现的异步非阻塞Web开发框架,以Reactive开发框架为基础,可以更加容易的实现高并发访问下的请求处理模式。在SpringBoot 2.x版本中你那个提供了“Spring-webflux”依赖模块,该模块有两种编程模式实现:一种基于功能性端点方式,一种基于SpringMVC注解方式。原创 2024-05-17 17:21:54 · 1106 阅读 · 0 评论