Mybatis Generator Plus 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
Mybatis Generator Plus 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
Mybatis Generator Plus 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 Apache
开发语言 Java 查看源码 »
操作系统 跨平台
软件类型 开源软件
开源组织
地区 国产
投 递 者 handosme_w
适用人群 未知
收录时间 2017-01-20

软件简介

1.介绍:

MyBatis generator plus 基于mybatis-generator-core v.1.3.2 扩展,增加如下主要特性:

1.生成支持Oracle、Mysql、Sqlserver分页查询的代码:

//分页查询demo
OperateLogExample relationshipsExample = new OperateLogExample();
relationshipsExample.setPagination(0L,10L);
List operateLogList = operateLogMapper.selectByExample(relationshipsExample);

2.生成支持Oracle、Mysql、Sqlserver批量插入的代码:

//批量插入demo
List operateLogList = new ArrayList<>();
for (int i = 0; i < 5; i++) {
    OperateLog operateLog = new OperateLog.Builder()
        .action("insertBatch_test"+i)
        .build();
    operateLogList.add(operateLog);
}
operateLogMapper.insertBatch(operateLogList);

3.Model类支持Builder模式创建,示例代码:

User user = new User.Builder()
    .userName("insert_test")
    .creatTime(new Date())
    .updateTime(new Date())
    .build();

4.支持Oracle使用SEQUENCE实现自增主键:
需要建立表主键对应的SEQUENCE,并且SEQUENCE的名称作出了要求:格式为table_name_SEQUENCE

5.支持Mapper接口设置数据源schema,可用于分库业务;
demo.mapper.ooc.UserVisitLogMapper.DATA_SOURCE_NAME

6.针对MySQL下分页大偏移量时慢查询优化List selectByBigOffset(DomainExample example);

7.乐观锁支持int updateByOptimisticLock(Domain record);

 

2.使用方式

方式一: 配置maven插件生成代码【推荐】

pom里plugin配置如下:


  org.ihansen.mbp
  mybatis-generator-plus-maven-plugin
  1.4
  
    true
    true
    tool/mbp/MybatisGeneratorCfg.xml
  

供参考的MBP配置文件: MybatisGeneratorCfg.xml
终端运行如下命令,生成自动代码:

mvn org.ihansen.mbp:mybatis-generator-plus-maven-plugin:1.4:generate

方式二:运行可执行jar文件

包含运行依赖包的可独立执行jar文件:mybatis-generator-plus-jar-with-dependencies.jar
供参考的MBP配置文件: MybatisGeneratorCfg.xml
使用如下命令执行即可生成自动文件:

java -jar mybatis-generator-plus-jar-with-dependencies-1.4.jar -configfile MybatisGeneratorCfg.xml -overwrite

方式三:main方法运行

本工具的使用方式和原生的MyBatis generator使用方式一致,兼容原生版本。maven 坐标:


  org.ihansen.mbp
  mybatis-generator-plus
  1.4
  test

生成文件的示例入口: test/demo.MBPMain

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击加入讨论🔥(2)
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
Apache Log4j 安全漏洞
当攻击者对 Log4j 配置具有写访问权限时,Log4j 1.2 中的 JMSAppender 容易受到不受信任数据的反序列化。攻击者可以提供 TopicBindingName 和 TopicConnectionFactoryBindingName 配置,导致 JMSAppender 执行 JNDI 请求,从而以类似于 CVE-2021-44228 的方式执行远程代码。请注意,此问题仅在专门配置为使用 JMSAppender(不是默认设置)时影响 Log4j 1.2。 Apache Log4j 1.2 已于 2015 年 8 月结束生命周期。用户应升级到 Log4j 2,因为它解决了以前版本中的许多其他问题。
CVE-2021-4104 MPS-2021-38359
2022-08-08 20:57
Apache Log4j SQL注入漏洞
SQL注入
根据设计,Log4j 1.2.x 中的 JDBCAppender 接受 SQL 语句作为配置参数,其中要插入的值是来自 PatternLayout 的转换器。消息转换器 %m 可能总是包含在内。这允许攻击者通过将精心制作的字符串输入到记录的应用程序的输入字段或标题中来操纵 SQL,从而允许执行意外的 SQL 查询。请注意,此问题仅在专门配置为使用 JDBCAppender(不是默认设置)时才会影响 Log4j 1.x。从 2.0-beta8 版本开始,重新引入了 JDBCAppender,适当支持参数化 SQL 查询,并进一步自定义写入日志的列。 Apache Log4j 1.2 已于 2015 年 8 月结束生命周期。用户应升级到 Log4j 2,因为它解决了以前版本中的许多其他问题。
CVE-2022-23305 MPS-2022-1444
2022-08-08 20:57
Apache Log4j 代码问题漏洞
反序列化
CVE-2020-9493 发现了 Apache Chainsaw 中存在的反序列化问题。在 Chainsaw V2.0 之前,Chainsaw 是 Apache Log4j 1.2.x 的一个组件,存在同样的问题。
CVE-2022-23307 MPS-2022-1445
2022-08-08 20:57
Apache Log4j 代码问题漏洞
反序列化
当攻击者对 Log4j 配置具有写访问权限或配置引用攻击者有权访问的 LDAP 服务时,所有 Log4j 1.x 版本中的 JMSSink 都容易受到不受信任数据的反序列化。攻击者可以提供一个 TopicConnectionFactoryBindingName 配置,使 JMSSink 执行 JNDI 请求,从而以类似于 CVE-2021-4104 的方式执行远程代码。请注意,此问题仅在专门配置为使用 JMSSink(不是默认设置)时影响 Log4j 1.x。 Apache Log4j 1.2 已于 2015 年 8 月结束生命周期。用户应升级到 Log4j 2,因为它解决了以前版本中的许多其他问题。
CVE-2022-23302 MPS-2022-1446
2022-08-08 20:57
Oracle MySQL Connectors访问控制错误漏洞
使用候选路径或通道进行的认证绕过
Oracle MySQL是美国甲骨文(Oracle)公司的一套开源的关系数据库管理系统。该数据库系统具有性能高、成本低、可靠性好等特点。MySQL Connectors是其中的一个连接使用MySQL的应用程序的驱动程序。 Oracle MySQL Connectors存在访问控制错误漏洞。攻击者可利用该漏洞控制组件,影响数据的保密性、完整性和可用性。
CVE-2018-3258 MPS-2018-13771
2022-08-08 20:57
Apache Log4j 代码问题漏洞
反序列化
Log4j是美国阿帕奇(Apache)软件基金会的一款基于Java的开源日志记录工具。Log4j 1.2版本中包含一个SocketServer类,在未经验证的情况下,该SocketServe类很容易接受序列化的日志事件并对其进行反序列化,在结合反序列化工具使用时,可以利用该类远程执行任意代码。
CVE-2019-17571 MPS-2019-17271
2022-08-08 20:57
Oracle MySQL Connectors 输入验证错误漏洞
使用不兼容类型访问资源(类型混淆)
Oracle MySQL是美国甲骨文(Oracle)公司的一套开源的关系数据库管理系统。MySQL Connectors是其中的一个连接使用MySQL的应用程序的驱动程序。 Oracle MySQL中的MySQL Connectors组件8.0.15及之前版本的Connector/J子组件存在安全漏洞。攻击者可利用该漏洞控制组件,影响数据的保密性、完整性和可用性。
CVE-2019-2692 MPS-2019-4430
2022-08-08 20:57
MySQL JDBC XXE漏洞
XXE
Oracle MySQL是美国甲骨文(Oracle)公司的一套开源的关系数据库管理系统。 Oracle MySQL 的 MySQL Connectors 产品中存在XXE漏洞,造成漏洞的原因主要是因为getSource方法未对传入的XML格式数据进行检验。导致攻击者可构造恶意的XML数据引入外部实体,造成XXE攻击。攻击者可能利用该漏洞进行任意文件读取。
CVE-2021-2471 MPS-2020-38350
2022-08-08 20:57
Apache Log4j 信任管理问题漏洞
证书验证不恰当
Apache Log4j是美国阿帕奇(Apache)基金会的一款基于Java的开源日志记录工具。 Apache Log4j中存在信任管理问题漏洞,该漏洞源于SmtpAppender没有验证主机名称与SMTPS连接的SSL/TLS证书是否匹配。攻击者可通过实施中间人攻击利用该漏洞拦截SMTPS连接,获取日志消息。
CVE-2020-9488 MPS-2020-6684
2022-08-08 20:57
Oracle MySQL Connectors输入验证错误漏洞
授权机制不恰当
Oracle MySQL是美国甲骨文(Oracle)公司的一套开源的关系数据库管理系统。MySQL Connectors是其中的一个连接使用MySQL的应用程序的驱动程序。Oracle MySQL Connectors (组件: Connector/J) 8.0.27及之前版本存在输入验证错误漏洞。攻击者可利用该漏洞通过多种协议进行网络访问,从而破坏Oracle MySQL Connectors,导致Oracle MySQL Connectors被接管。
CVE-2022-21363 MPS-2021-36587
2022-08-08 20:57
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
2 评论
18 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部