MyBatis Mate

MybatisPlus 官方团队力作
 

保护数据安全,实现自动化维护,敏感词过滤,数据审计,权限控制,加密解密等,让您的工作更高效、更安心!

即使有 ORM 框架,仍然可能需要个性化的开发来应对某些业务场景。

  • 例如,对于数据安全性要求高的业务,可能需要实现数据库加密和敏感过滤等功能。
  • 对于数据量大的应用,可能需要进行分库分表来提高查询效率和扩展性。这些都是需要根据具体业务需求进行个性化的开发和定制化的配置
ORM 能力边界

虽然以上业务场景网上可复制借鉴的方案很多,但问题很多集中一下几个部分

  • 安全性和可靠性问题:开发过程中要充分考虑安全性和可靠性问题,尽可能利用现有的安全和可靠性技术来保证数据的安全和系统的可靠性。

  • 维护成本高问题:网上方案解决方案较为单一,针对不同业务场景要引入大量无用依赖 ”高射炮打蚊子“。

  • 易用性和通用型问题:网上方案解决方案不具有良好的易用性和通用型,能够方便地集成到现有的技术栈中。

开发能力边界

为什么需要 MyBatis Mate

解决企业级数据敏捷优雅处理而设计,采用注解及各种设计模式,简化复杂的数据处理逻辑,在框架层面处理封装屏蔽,提供可重用的Java代码

1.

2.

功能强大,提供了全面的数据安全和管理功能,实现自动化维护,敏感词过滤,数据权限控制,加密解密等,让您的工作更高效、更安心

3.

mybatis-mate为 mybatis-plus 作者青苗新作,其代码简单易用,并且提供详细的文档和视频教程,非常适合项目使用

# CHAPTER 2
# CHAPTER 2

数据安全场景

防止明文存储引起的数据泄密、突破边界防护的外部黑客攻击以及来自内部高权限用户的数据窃取,从根本上解决数据库敏感数据泄漏问题

// Services
User {
   private String idcard;
}

public String save(User user){
    String enc = 加密算法工具类.加密(user.getIdCard)
    user.setIdCard(enc)
    mapper.insert(user)
}

public User query(query){
    User user = mapper.query();
    String des = 加密算法工具类.加密(user.getIdCard)
    user.setIdCard(des)
    return user;
}
# PRESENTING CODE

自定义实现

// Services
User {
   
   @FieldEncrypt
   private String idcard;
}

public String save(User user){
    mapper.insert(user)
}

public User query(query){
    return mapper.query();
}
# PRESENTING CODE

MyBatisMate 优化

MyBatisMate 能力

名称 备注
用户输入信息敏感词过滤
用户输入关键参数变更审计
数据权限控制数据行级可见性
核心数据入库自动加密出库解密 对称、非对称、国密
多数据源分库分表 读写分离、事务管理
敏感字段脱敏输出
虚拟属性、字典属性转化输出
数据库脚本自动维护

能力图谱

# PRESENTING CODE

MyBatis Mate

mybatis-mate.github.io

MyBatisMate

By 冷冷

MyBatisMate

  • 152