-
Notifications
You must be signed in to change notification settings - Fork 2
模块说明
yong.teng edited this page Apr 29, 2020
·
14 revisions
- AOP 封装,方便实现基于 aspectj 的自定义注解
- ——————————————————
- 一些继承 apache lang3、apache collections4 的对字符串、集合、Map、Class、Object、Enum、Number等工具类封装和扩展
- 汉字拼音工具类
- 版本对比工具类
- 数学计算
- IP 地址工具类
- 进制转换
- 对象序列化和反序列化,支持二进制、FastJson、Gson、Jackson
- 数据验证
- 带 code 和 message 消息消息对象,通过 properties 的形式注入
对 org.quartz-scheduler:quartz 的二次封装
- 对 mybatis、spring-data-mongo 常用方法(如:根据条件获取单条记录、根据主键获取单条记录、分页、根据条件删除数据、根据主键删除数据)进行了二次封装
- 从代码层面上支持数据库一主多从实现读写分离,insert、update、delete 操作主库,select 操作从库
- 对 com.maxmind.geoip2:geoip2 进行二次封装,实现支持根据 IP 地址获取所属 ISP、所属国家、所属城市等等信息
- 支持内存实现建议缓存,避免多次扫描 maxmind db
- 对 apache httpcomponents、okhttp3 进行封装,屏蔽了 apache httpcomponents 和 okhttp3 的不同技术细节
- 屏蔽了对 post form、post json 等等的技术细节
- 封装了对文件的读写操作
- 封装了对文件的权限和所属用户及用户组的操作
- 主要实现了一些 jackson 的自定义注解及序列化、反序列化的实现
- 目前支持 Unix Timestamp (10 位时间戳)、Enum 和 Map 的相互转换
- 定义了一些通用的 pojo 类
- 封装对不同对象存储产品的实现
- 目前功能很弱,需逐步完善,形成对阿里云、天翼云、AWS、百度云、华为云、腾讯云等等不同云厂商对象存储产品的封装
- Redis 操作类,基于 jedis 实现,RedisTemplate 方法名、参数几乎同 redis 命令保持一致
- 对对象读写 redis 进行了扩展,支持二进制、json方式序列化和反序列化,例如:通过 RedisTemplate.getObject("key", Class) 可以将 redis 中的数据读取出来后,直接反序列化成一个对象
- ——————————————————
- 对词库的解析,目前仅支持搜索词条
- spring mvc 不再支持 velocity,这里主要是把原来 spring mvc 中关于 velocity 的实现迁移过来,让喜欢 velocity 的 coder 继续在高版本的 springframework 中继续使用 velocity
- web 相关的功能封装,支持 servlet 和 reactive
- 封装了一些常用注解,简化了业务层方面的代码实现,如:com.buession.web.http.request.annotation.RequestClientIp: 获取客户端的真实 IP、com.buession.web.http.response.annotation.ContentType: 设置响应头中的 Content-Type、com.buession.web.http.response.annotation.ResponseHeader: 设置响应头、com.buession.web.http.response.annotation.ResponseHeaders: 批量设置响应头、com.buession.web.http.response.annotation.HttpCache: 设置页面缓存、com.buession.web.http.response.annotation.DisableHttpCache: 禁止页面缓存
- 封装了一些常用 filter,如:com.buession.web.servlet.filter.MobileFilter / com.buession.web.reactive.filter.MobileFilter: 判断是否为移动设备请求、com.buession.web.servlet.filter.ServerInfoFilter / com.buession.web.reactive.filter.ServerInfoFilter: 在响应头中返回主机名称(可用于在排查问题时,定位主机)