Tag: Java
12 articles
Java 枚举使用 Jackson Json 序列化与反序列化

Java 枚举使用 Jackson Json 序列化与反序列化

解决使用Jackson Json序列化和反序列化Java枚举时的问题。当使用Jackson Json进行序列化时,枚举类能正常工作,但反序列化时会出错。问题源于当前使用的Jackson版本(2.11.x)不支持整数类型的反序列化。本文介绍解决方法,包括使用@JsonValue注解、使用@JsonCreator自定义生成方法、使用@JsonProperty自定义值,以及自定义序列化器和反序列化器。详细内容请参考本文。
一个 Bug 给公司带来20000多损失

一个 Bug 给公司带来20000多损失

分布式系统开发中,状态不一致问题是常见的问题。本文总结了作者连续两个月代码出问题导致公司损失的两个案例,并分析了问题原因和解决方法。分布式系统开发需要考虑状态不一致问题,并使用合适的手段来解决。
Spring Scheduled 三种定时方式

Spring Scheduled 三种定时方式

本文介绍了Spring Schedule处理定时任务的三种方式:fixRate、fixDelay和cron。其中,fixRate会预先安排一系列固定时间点,fixDelay会在上次执行结束后的固定时间间隔后执行,cron可以指定具体的时间。文中还提到了一些可以扩展了解的地方,如schedule自定义线程池、多实例环境下如何保证唯一以及一些定时任务的可选方案。
Spring Data Jpa 多数据源选择无效

Spring Data Jpa 多数据源选择无效

在使用Spring Data Jpa的项目中,遇到了重新分库信息无效的问题。解决方法包括关闭spring.jpa.open-in-view配置、在新线程中执行、解绑并重新绑定EntityManager。对Spring Data Jpa不熟悉导致了几天的困扰,需要注意Spring启动时的日志和警告信息。
maven获取不到jar包

maven获取不到jar包

今天遇到一个 maven 的问题,构建一个项目的时候忘记把一个依赖的 jar 包发布到仓库,然后构建失败,问题在于把依赖的 jar 包发布到仓库后还是构建失败,说无法获取到 jar 包,报的错误如下:
Spring Cloud Stream 初尝

Spring Cloud Stream 初尝

公司里目前用的是RocketMQ,用的过程中遇到一些问题,逐渐将一些业务转到 kafka 上,正好目前项目是spring boot项目,所以就来试试 spring cloud stream,本地环境有 rabbitmq,所以使用它了。
spring transaction不生效的一些原因

spring transaction不生效的一些原因

同一个类中一个方法调用的另一个有事务的方法 在spring的声明式注解中,如果直接调用的方法不包含Transactional注解,那么即使这个方法里面调用的其他方法包含注解,那么事务也是不会生效的,例如下面的这段代码:
mycat事务超时

mycat事务超时

问题 项目里面使用的是mycat进行分库分表,但在最近一个系统更新后出现数据库事务锁超时的问题,如下面的错误: Caused by: java.sql.SQLException: Lock wait timeout exceeded; try restarting transaction 分析 先在网上搜索了一下之后,发现大多数说的都不是什么好的解决方案,手 …
Mybatis example

Mybatis example

这篇文章主要是一个基本的例子,分为两个部分,mybatis独立的配置和mybatis-spring配置 项目的最终地址在这里:https://github.com/shellj/mybatis-example Mybatis单独的配置 根据官方的例子进行配置
随笔

随笔

奇怪的一个东西,之前弄syntaxhighlight一直没有成功,今天又来弄,还是高亮不了,不知到是什么问题。求教高手。 1 2 3 4 5 public class Test{ public static void main(String[] args){ System.out.println(``"hello-world"``); } …
java练习题

java练习题

【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21…. 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 1.程序分析:判断素数的方法:用一个数分 …