微服务开发系列:开篇
微服务开发系列:为什么选择 kotlin
微服务开发系列:为什么用 gradle 构建
微服务开发系列:目录结构,保持整洁的文件环境
微服务开发系列:服务发现,nacos 的小补充
微服务开发系列:怎样在框架中选择开源工具
微服务开发系列:数据库 orm 使用
微服务开发系列:如何打印好日志
微服务开发系列:鉴权
微服务开发系列:认识到序列化的重要性
微服务开发系列:设计一个统一的 http 接口内容形式
微服务开发系列:利用异常特性,把异常纳入框架管理之中
微服务开发系列:利用 knife4j,生成最适合微服务的文档
在该框架中,已经包含了绝大多数开发所需要的工具类。
1 工具类使用步骤
- 先查找 hutool 中有没有,如果没有,下一步
- 找已经存在的 jar 包是否已经存在,如果不存在或不合适(例如来源于非专业解决这类问题的工具类),下一步
- 考虑自己实现,如果难度过大,下一步
- 引入其它依赖实现,这是最后一步才需要考虑的,进行这一步之前,反复确认前三步是否都做到位了
在引入第三方工具类、新建自己的工具类之前请三思!
2 本地缓存
使用 com.github.ben-manes.caffeine
,spring gateway 官方推荐使用。
3 分布式缓存
使用 redisson,唯一指定使用的 redis 客户端,你能想到的功能都能在这里找到。
4 基础工具类
大部分基础工具类都来源于 hutool。
hutool 包含了绝大多数你能想到的工具类。
但是因为 kotlin 的引入,某些对于文件或者是字符的处理,使用 kotlin 提供的方式会更加方便。
比如字符串处理、线程工具、集合处理、日期处理、文件处理、验证码生成、md5、类处理、各类加密等等等等。
在项目根目录下执行 grep -hr "import cn.hutool" * | sort | uniq
,获取项目所有用到的工具类,有如下结果:
import cn.hutool.captcha.CaptchaUtil; //验证码工具类
import cn.hutool.captcha.LineCaptcha; //验证码工具类
import cn.hutool.core.bean.BeanUtil; //实体类处理
import cn.hutool.core.codec.Base64; //base64工具
import cn.hutool.core.collection.CollUtil; //集合工具类
import cn.hutool.core.date.LocalDateTimeUtil; //日期处理
import cn.hutool.core.date.StopWatch; //耗时记录
import cn.hutool.core.exceptions.ExceptionUtil; //异常工具
import cn.hutool.core.io.FileUtil; //文件工具
import cn.hutool.core.io.IoUtil; //io流处理
import cn.hutool.core.lang.Editor; //实体类处理
import cn.hutool.core.map.MapUtil; //map工具类
import cn.hutool.core.text.CharSequenceUtil; //字符串工具类
import cn.hutool.core.thread.ThreadUtil; //线程工具类
import cn.hutool.core.util.ArrayUtil; //数组工具类
import cn.hutool.crypto.asymmetric.KeyType; //加密
import cn.hutool.crypto.asymmetric.SM2; //sm2国密加密
import cn.hutool.crypto.digest.BCrypt; //BCrypt加密
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。