1.依赖传递 在Maven中,依赖是会传递的,假如在业务项目中引入了spring-boot-starter-web依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>2.7.4</version> </dependency> 那么业务项目不仅直接引入了spring-boot-starter-web依赖,还间接引入...

  ESoaP6rQfmU1   2023年11月02日   46   0   0 Java

1.前言 最近做了一个支付相关的需求,要求在收银台页面显示商品的价格时带上货币符号¥,类似下图中的格式: 最初我是用的下面这样的代码: System.out.println(Currency.getInstance(Locale.CHINA).getSymbol()); 本机测试,正常返回¥,如下图所示: 但部署到服务器后,发现服务器返回的是CNY,而不是预期的¥。 于是将上面的代码改成了下面这样: System.out.println(Currency.getInstance("CNY").getSymbol(Locale.CHINA)); 本机测试,返回¥,部署到服务器后,也返回¥...

  ESoaP6rQfmU1   2023年11月01日   43   0   0 Java

在日常的开发工作中,为了保证落库数据的完整性,参数校验绝对是必不可少的一部分,本篇文章就来讲解下在项目中该如何优雅的校验参数。 假设有一个新增学员的接口,一般第一步我们都会先校验学员信息是否正确,然后才会落库,简单起见,假设新增学员时只有2个字段:姓名、年龄。 @Data publicclassStudentVO{ / 姓名 / privateStringname; / 年龄 / privateIntegerage; } 要求为:姓名和年龄必填,姓名不能超过20个字符。 1.最原始的写法 先来看下最原始的写法,相信大多数人都这么写过,或者说在初学Java时都这么写过: publicStri...

  ESoaP6rQfmU1   2023年11月01日   42   0   0 Java

1.踩坑经历 最近做了个需求,需要往公司微信公众号推送一个模板消息,并且点击该消息需要跳转到公司小程序的某个页面。 1.1拿到模板id 既然是发送模板消息,第一步就需要登录微信公众号后台新建模板消息,拿到模板id。 登录地址:https://mp.weixin.qq.com 新建模板消息的方法如下所示: 1)在左侧“广告与服务”菜单下找到“模板消息”菜单 2)点击”从历史模板库中添加“按钮 3)找到合适的模板后,点击”详情”,打开模板详情页 4)在模板详情页点击”添加“按钮,将模板添加到自己的公众号中 5)添加完成后,就可以拿到模板id 1.2调用发送模板消息接口 模板消息接口...

  ESoaP6rQfmU1   2023年11月01日   62   0   0 Java

1.示例 首先,定义一个接口: publicinterfaceStaff{ voidwork(); } 然后,新增一个类并实现上面的接口: publicclassCoderimplementsStaff{ @Override publicvoidwork(){ System.out.println("认真写bug……"); } } 假设现在有这么一个需求:在不改动以上类代码的前提下,对该方法增加一些前置操作或者后置操作。 接下来就来讲解下,如何使用JDK动态代理来实现这个需求。 首先,自定义一个调用处理器,实现java.lang.reflect.InvocationHandler接口并重写...

  ESoaP6rQfmU1   2023年11月01日   55   0   0 Java

1.简介 CGLIB的全称是:CodeGenerationLibrary。 CGLIB是一个强大的、高性能、高质量的代码生成类库,它可以在运行期扩展Java类与实现Java接口, 底层使用的是字节码处理框架ASM。 Github地址:https://github.com/cglib/cglib。 CGLIB的Maven坐标如下所示: <dependency> <groupId>cglib</groupId> <artifactId>cglib</artifactId> <version>3.3.0</version&...

  ESoaP6rQfmU1   2023年11月01日   101   0   0 Java

最近做了个脱敏的需求,要对系统中的敏感信息,如手机号、车牌号、身份证号、银行卡号等进行脱敏显示。 效果类似下面这样: 简单来说,就是对敏感信息中的某几位进行掩码显示,常见的一般是使用。 本篇文章就来讲解下在项目中该如何优雅的实现脱敏。 1.工具类 首先,需要明确下脱敏规则: 手机号 显示前3位和后4位,中间4位脱敏,如1826791。 车牌号 显示前3位和后1位,其余位脱敏,如沪B08。 身份证号 显示前3位和后4位,其余位脱敏,如4100007。 银行卡号 显示前4位和后4位,其余位脱敏,并且每4位分隔,如62148533。 然后,需要一个实现了以上脱敏规则的工具类,这...

  ESoaP6rQfmU1   2023年11月01日   99   0   0 Java
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~