随笔分类 - java
摘要:简介 SPI(Service Provider Interface),是JDK内置的一种 服务提供发现机制,可以用来扩展和替换组件,主要是被框架的开发人员使用。 核心代码 spi接口定义 public interface UserSpi { /** * 获取用户信息 * * @param id 用户
阅读全文
摘要:最近花了两周时间写了一个JAVA开源项目openapi, 项目是为了解决接口之间调用的加解密和验签问题。 项目地址: github: https://github.com/hdwang123/openapi gitee: https://gitee.com/hdwang123/openapi 项目介
阅读全文
摘要:背景 对外服务的接口为了安全起见,往往需要进行相应的安全处理:数据加密传输和身份认证。数据加密传输有对称加密和非对称加密两种,为了更加安全起见采用非对称加密比较好些,身份认证则采用数字签名可以实现。 程序流程 方案一:仅采用非对称加密 方案二:采用非对称加密+对称加密 核心代码(方案一) 客户端 p
阅读全文
摘要:1.github上上传项目(略) 2.在sonatype上注册账号 https://issues.sonatype.org/secure/Dashboard.jspa 注意记住用户名和密码 3.在sonatype创建问题 4.新建完后客服会给提示 主要是要求:groupId要合理,需要按照要求在gi
阅读全文
摘要:背景 对外服务的接口为了安全起见,往往需要进行相应的安全处理:数据加密传输和身份认证。数据加密传输有对称加密和非对称加密两种,为了更加安全起见采用非对称加密比较好些,身份认证则采用数字签名可以实现。 非对称加密缺点:加解密速度慢、RSA有最大长度要求。 方案一 仅采用非对称加密 RSA对内容长度的要
阅读全文
摘要:Workbook workbook = WorkbookUtil.createBook(file); workbook.setActiveSheet(workbook.getSheetIndex(sheetName)); ExcelWriter excelWriter = new ExcelWrit
阅读全文
摘要:1.报表频度 /** * 报表频率 * * @author wanghuidong * @date 2022/2/24 16:39 */ public enum ReportFrequencyEnum { YEAR("year", "年"), MONTH("month", "月"), HALF_YE
阅读全文
摘要:1.pom.xml依赖配置 <!-- huTool工具箱 --> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.7.22</version> </dependency>
阅读全文
摘要:1.pom依赖配置 <!-- huTool工具箱 --> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.7.19</version> </dependency> <!-
阅读全文
摘要:1.maven配置 <!-- k8s client --> <dependency> <groupId>io.kubernetes</groupId> <artifactId>client-java</artifactId> <version>12.0.1</version> </dependenc
阅读全文
摘要:结果 构造的树为 Tree001 / \ Tree002 Tree003 / Tree004 递归方式遍历一棵树 第1次要遍历的tree为:Tree{nodeId='001', nodeName='根结点'} 001:根结点 第2次要遍历的tree为:Tree{nodeId='002', nodeN
阅读全文
摘要:从事开发工作多年,spring源码没有特意去看过。但是相关技术原理倒是背了不少,毕竟面试的那关还是得过啊! 正所谓面试造火箭,工作拧螺丝。下面实现一个最简单的ioc容器,供大家参考。 1.最终结果 2.涉及相关技术 (1) jdk动态代理 (2) java反射 3.源代码 (1)包扫描工具类 pac
阅读全文
摘要:1.打开官网稍微学习一下,了解一下spring cloud是个什么东西,大概有哪些组件等 https://spring.io/projects/spring-cloud https://docs.spring.io/spring-cloud-netflix/docs/current/referenc
阅读全文
摘要:最近面了阿里的外包吧,居然也要在线敲代码了,那叫一个紧张啊。题目就是实现一个LRU算法的缓存。外包居然要求也这么高了,哎。还好,LRU是我大学老师布置的一道题目,当然我用C语言实现的,算法原理那是一清二楚,可是面试的时候就脑子一片空白了。好在,边敲代码,边思考,就慢慢想起来了,下面是我的代码。仅供参
阅读全文
摘要:公司对开发人员的单元测试要求比较高,要求分支覆盖率、行覆盖率等要达到60%以上等等。项目中已经集成了jmockit这个功能强大的mock框架,学会使用这个框架势在必行。从第一次写一点不会,到完全可以应付工作要求,期间踩了好多坑,学到了不少东西。下面简单总结一下jmockit这个框架的使用,重点介绍M
阅读全文
摘要:1.代码 2.运行结果 hello,Bob. I am Alice.hello,Bob. I am Alice.hello,Bob. I am Alice.hello,Bob. I am Alice.
阅读全文
摘要:1.表情字符转编码 【C#】 Encoding.UTF32.GetBytes("😁") -> ["1", "f6", "1", "0"] 【js】 "😁".codePointAt(0).toString(16) -> 1f601 【java】 byte[] bytes = "😀".getByt
阅读全文
摘要:参考网址: https://www.cnblogs.com/lilinzhiyu/p/8024100.html
阅读全文
摘要:参考文章: https://blog.csdn.net/qiaqia609/article/details/53171149 https://blog.csdn.net/u010355502/article/details/77197616
阅读全文