随笔分类 -  A1-java代码块积累

1 2 3 4 下一页

雪花算法生成唯一id的工具类
摘要:maven 依赖包 <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.9</version> </dependency> <dependency> 阅读全文

posted @ 2024-11-03 16:33 乐之者v 阅读(91) 评论(0) 推荐(0) 编辑

base64和字符串的转换
摘要:base64转换为字符串 /** * base64转字符串 * @param base64 * @return */ public static String base64ToStr(String base64) { if (StringUtils.isBlank(base64)) { return 阅读全文

posted @ 2024-09-04 23:00 乐之者v 阅读(16) 评论(0) 推荐(0) 编辑

后端兼容app新旧版本的功能
摘要:在开发中,有时需要对 app的新版本和旧版本,做不同的处理。可以根据版本号判断。 新版本app交互有变化时,同一个接口在 不同版本可能要返回不同的数据。 如果不区分新旧版本,有可能会导致旧版本app 不可用。 比如 旧版本1.2.1有一个功能是跳转 微信,到了新版本修改了 app的交互,变成跳转 微 阅读全文

posted @ 2024-08-20 23:07 乐之者v 阅读(43) 评论(0) 推荐(0) 编辑

AES常用的代码示例
摘要:AES AES是 对称加密。 对称加密是指加密和解密使用相同的密钥的加密算法。 非对称加密是指加密和解密使用不同的密钥的加密算法。 AES加密解密 加密模式,有 ECB模式 和 CBC 模式等等,ECB 不需要 iv偏移量,而CBC需要。 密钥,可以自定义。 填充方式,有 PKCS5 、PKCS7、 阅读全文

posted @ 2024-08-19 23:23 乐之者v 阅读(83) 评论(0) 推荐(0) 编辑

策略模式代码示例(二)
摘要:一、定义 策略模式,针对每一个不同的类型,调用具有共同接口的不同实现类,从而使得它们可以相互替换。 策略模式 ,针对实现同一接口的不同的类,采用不同的策略。比如,面对高级会员、初级会员会采用不同的折扣。 策略模式,可以避免大量的if和else。 二、角色 策略模式涉及到三个角色: ● 环境(Cont 阅读全文

posted @ 2024-03-01 15:48 乐之者v 阅读(25) 评论(0) 推荐(0) 编辑

统一异常处理@ControllerAdvice及参数校验@Validated
摘要:一、异常处理 有异常就必须处理,通常会在方法后面throws异常,或者是在方法内部进行try catch处理。 直接throws Exception 直接throws Exception,抛的异常太过宽泛,最好能抛出准确的异常,比如throws IOException之类。 User getUser 阅读全文

posted @ 2024-02-28 14:23 乐之者v 阅读(145) 评论(0) 推荐(0) 编辑

Spring/SpringBoot 拦截器
摘要:Spring/SpringBoot 拦截器 拦截器的作用: 拦截器,可以进行请求过滤、权限管理、打印日志、数据校验等。 拦截器,可以在请求前、请求后进行处理。 代码示例: 拦截器 MyInterceptor: Spring的拦截器,需要实现 HandlerInterceptor 接口。 public 阅读全文

posted @ 2024-02-18 21:23 乐之者v 阅读(141) 评论(0) 推荐(0) 编辑

java读取写入excel数据
摘要:使用场景 在java开发中,有时需要使用excel读取和写入数据。 可以使用 poi来处理。 引入依赖 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.16</version 阅读全文

posted @ 2024-01-02 23:52 乐之者v 阅读(667) 评论(0) 推荐(0) 编辑

kafka代码实践示例
摘要:安装kafka: Windows安装kafka, 详情见:https://blog.csdn.net/sinat_32502451/article/details/133067851 Linux 安装kafka,详情见:https://blog.csdn.net/sinat_32502451/art 阅读全文

posted @ 2023-10-29 15:01 乐之者v 阅读(14) 评论(0) 推荐(0) 编辑

Redisson使用延时队列
摘要:延时队列 在开发中,有时需要使用延时队列。 比如,订单15分钟内未支付自动取消。 jdk延时队列 如果使用 jdk自带的延时队列,那么服务器挂了或者重启时,延时队列里的数据就会失效,可用性比较差。 Redisson延时队列 可以使用Redisson的延时队列。 Redisson的配置 详情见: ht 阅读全文

posted @ 2023-10-12 22:29 乐之者v 阅读(673) 评论(0) 推荐(0) 编辑

SpringBoot中使用@Retryable注解进行重试
摘要:SpringBoot中使用@Retryable注解进行重试 有功能需要重试时,可以使用Spring的 @Retryable 注解. 参数含义: value:抛出指定异常才会重试 exclude:指定不处理的异常 maxAttempts:最大重试次数,默认3次 backoff:重试等待策略,默认使用@ 阅读全文

posted @ 2023-10-11 17:09 乐之者v 阅读(970) 评论(0) 推荐(0) 编辑

mysql分库分表 sharding-jdbc 5.0的代码实现 (二)
摘要:### 分库分表 之前试过了分表不分库,详情见:https://www.cnblogs.com/expiator/p/17524493.html 这次再试下分库分表。 ### 依赖包 SpringBoot 用的是 2.6.13 版本。 ``` org.apache.shardingsphere sh 阅读全文

posted @ 2023-07-05 23:37 乐之者v 阅读(127) 评论(0) 推荐(0) 编辑

mysql分库分表 sharding-jdbc 5.0的代码实现
摘要:### shardingsphere-jdbc 5.0 有什么优点? 5.0之前的版本,不支持CASE WHEN、HAVING、UNION(ALL),有限支持子查询。 5.0支持这些特性,开发起来会更方便些。 ### 依赖包 SpringBoot 用的是 2.6.13 版本。 ``` org.apa 阅读全文

posted @ 2023-07-04 00:11 乐之者v 阅读(355) 评论(0) 推荐(0) 编辑

mysql分库分表 sharding-jdbc 3.0的代码实现
摘要:### 一、依赖包 SpringBoot 用的是 2.0.6.RELEASE 版本。 ``` io.shardingsphere sharding-jdbc-spring-boot-starter 3.0.0.M4 org.springframework.boot spring-boot-start 阅读全文

posted @ 2023-06-29 23:29 乐之者v 阅读(285) 评论(0) 推荐(0) 编辑

业务开发常用的配置表及代码
摘要:### 配置表 通过配置表,灵活的配置。 开发中某些经常变更的参数值,加上配置。比如 订单30分钟后失效,需求变更,要改为15分钟,那么直接改配置表就行了,不用发版。 某些关键的容易出错的逻辑,加上一个开关,也就是 config_value 为 0或1,为1表示打开,为0表示关掉。 不需要的逻辑,可 阅读全文

posted @ 2023-06-27 14:30 乐之者v 阅读(350) 评论(0) 推荐(0) 编辑

业务开发常用的开关
摘要:### 开关 某些关键的容易变更的逻辑,加上一个开关。 需要的时候,打开开关。 不需要的逻辑,可以及时用开关关掉。 或者是逻辑复杂,开发环境造数据麻烦时,也可以配置开关,把前置条件关掉,方便验证数据,也方便测试。 ### 示例: ``` @Service public class SwitchSer 阅读全文

posted @ 2023-06-27 14:29 乐之者v 阅读(23) 评论(0) 推荐(0) 编辑

@PostConstruct的使用
摘要:### @PostConstruct 以Post为前缀的单词,指 在...之后。比如 postgraduate 就有大学毕业后的意思。 Construct 是构造方法。 @PostConstruct 是指在构造方法之后运行的意思。 ### 执行顺序: Constructor(构造方法) -> @Po 阅读全文

posted @ 2023-06-16 00:01 乐之者v 阅读(185) 评论(0) 推荐(0) 编辑

@Configuration配置 @Bean
摘要:### @Configuration 和 @Bean * @Configuration 用于定义配置类,作用在类上。 * @Bean 用于定义 Bean对象,作用在方法上。 @Configration 注解类中可以声明一个或多个 @Bean 方法 ### User 类 ``` public clas 阅读全文

posted @ 2023-06-15 22:59 乐之者v 阅读(115) 评论(0) 推荐(0) 编辑

Spring/SpringBoot自定义线程池
摘要:Spring/SpringBoot自定义线程池 在 Spring/SpringBoot 中,可以使用 @Configuration 和 @Bean 去设置线程池,用 @Value 去做线程池的参数配置。 依赖包: 引用 google 的 guava包。 <dependency> <groupId>c 阅读全文

posted @ 2023-06-13 22:02 乐之者v 阅读(618) 评论(0) 推荐(0) 编辑

SpringBoot集成Redisson使用分布式锁
摘要:依赖包: 不要使用太低的 版本,低版本有内存泄露的问题。可以使用 3.18 及以上的版本。 <dependency> <groupId>org.redisson</groupId> <artifactId>redisson</artifactId> <version>3.18.1</version> 阅读全文

posted @ 2023-06-01 22:02 乐之者v 阅读(660) 评论(0) 推荐(0) 编辑

1 2 3 4 下一页
< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

导航

统计

点击右上角即可分享
微信分享提示