查看源图像

Hutool

文档:Hutool

一个小而全的Java工具类库,覆盖了Java开发底层代码的方方面面,项目公共类和公用工具类的封装。可以很大程度的代替Apache Commons工具类和Google Guava类库。

核心类库hutool-core 基础功能类库,无第三方依赖
常用功能
LocalDateTime-时间工具:针对日期JDK8+日期API的封装,包括日期解析,格式化,转换等操作
StrUtil-字符串工具:类似Apache Commons Lang
- sub,subString加强版,支持负数索引,越界兼容
- format,format加强版,支持slf4j的格式方式
RandomUtil-随机数工具,随机数字,随机字符串
IdUtil-唯一ID工具,支持UUID,ObjectId(MongoDB), Snowflake(Twitter)
DigestUtil-摘要算法,支持MD5, SHA-1, SHA-256等等
JWT工具-jwt创建,解析,验证

工具类量大,还好用,推荐使用!!


mybatis-mapper

官网:MyBatis Mapper

开箱即用,可以自定义通用方法,支持JPA注解

自定义通用基类
io.mybatis.mapper.Mapper实现了基础的增删改查操作,这个基类实现的大量方法,如果我们想精简方法且名称修改为自己的风格,可以自定义自己的接口,具体实现很简单,可以参考MybatisMapper[java%2Fplus%2Fcove%2Finfrastructure%2Fmybatis%2FMybatisMapper.java" target="_blank" rel="noopener">infrastructure-mybatis/src/main/java/plus/cove/infrastructure/mybatis/MybatisMapper.java · Jimmy.Zhang/flower - 码云 - 开源中国 (gitee.com)],只需要在方法上增加相应的注解即可。

updateById 根据主键更新实体,忽略空值
updateAllById 根据主键更新实体,不忽略空值,实用功能

文件配置(MyBatis配置):
mybatis:
// 配置文件地址,可以配置枚举类型处理器
config-location: classpath:configs/mybatis.xml
// 配置sql文件地址
mapper-locations: classpath:mappers/*.xml
// 配置类型包
type-aliases-package: plus.cove.flower.domain.*

代码配置:
// 设置mapper实现包(非仓储接口包)
@MapperScan(basePackages ="plus.cove.flower.repository.mybatis")
public class MyBatisConfig {

// 可以设置插件-mybatis原生插件
@Bean
public SqlStatementInterceptorlikeInterceptor() {
SqlStatementInterceptor statement =new SqlStatementInterceptor();
return statement;
}