Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
hibernate-orm — CVE-2019-14900 | Kitploit
工具/GitHubGitHub/shanika04/hibernate-orm
General Purpose UtilitiesVulnerability AnalysisCode AnalysisDatabase Security
GitHubshanika04/hibernate-orm

hibernate-orm

CVE-2019-14900

查看仓库
5年前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Hibernate ORM 是一个为应用程序、库和框架提供对象关系映射(ORM)支持的库。

它还提供了 JPA 规范的实现,JPA 是 ORM 的标准 Java 规范。

这是其源代码的仓库:有关更多信息,请参见 Hibernate.org。

Build Status Language grade: Java

从源码构建

构建需要将 Java 8 JDK 设置为 JAVA_HOME。

你需要 Git 来获取 源代码。

Hibernate 使用 Gradle 作为其构建工具。如果你是 Gradle 新手,请参阅下面的 Gradle 入门 部分。

贡献者应阅读 贡献指南。

请参阅设置 IntelliJ 或 Eclipse 作为开发环境的指南。

请查看 CONTRIBUTING.md 中的 快速入门 部分,了解如何开始处理 Hibernate 源代码。

持续集成

Hibernate 使用 Jenkins 进行持续集成。每次推送到上游仓库时,项目都会进行持续构建。总体上有几个不同的任务,所有这些任务都可以在 http://ci.hibernate.org/view/ORM/ 上查看。

Gradle 入门

本节描述了一些开发者和新手可能需要了解的基本知识,以便快速上手 Gradle。Gradle 的文档非常完善;其中特别重要的有两份:

  • Gradle 用户指南 是一本典型的用户指南,采用按主题的方式描述 Gradle 的所有功能。
  • Gradle DSL 指南 独特且出色,能帮助你快速掌握 Gradle 的某些方面。

使用 Gradle Wrapper

对于不常使用 Gradle 且不想安装它的贡献者,Gradle 提供了一个非常酷的功能,称为 Wrapper。它让你可以在零配置的情况下,无需预先安装 Gradle 发行版即可运行 Gradle 构建。Hibernate 为你配置了 Gradle Wrapper。如果你更喜欢使用 Wrapper 而不是安装 Gradle(或者为了确保使用为旧版本构建指定的 Gradle 版本),你可以在以下讨论中使用命令 gradlew(或 gradlew.bat)代替 gradle(或 gradle.bat)。请注意,gradlew 仅在项目的根目录下可用,因此根据你的工作目录,你可能需要调整 gradlew 的路径。

示例中使用 gradle 语法,但如果你希望使用 Wrapper,只需将 gradle 替换为 gradlew(路径相对正确即可)。

使用 gradlew 的另一个原因是它会使用构建所定义的确切 Gradle 版本。

执行任务

Gradle 使用构建任务的概念(相当于 Ant 目标或 Maven 阶段/目标)。你可以通过以下命令获取可用任务列表:

root@kitploit:~
gradle tasks

要跨所有模块执行任务,只需从根目录执行该任务。Gradle 会访问每个子项目,如果子项目定义了该任务,则执行它。要在特定模块中执行任务,你可以:

  1. cd 进入该模块目录并执行任务。
  2. 指定“任务路径”。例如,要从根目录运行 hibernate-core 模块的测试,你可以执行 gradle hibernate-core:test。

常见的 Java 相关任务

  • build - 构建(jar)并测试此项目
  • buildDependents - 构建并测试此项目及其所有依赖项目。例如,如果在 hibernate-core 中运行此任务,Gradle 将构建并测试 hibernate-core 以及 hibernate-envers(因为 envers 依赖于 core)
  • classes - 编译主类
  • testClasses - 编译测试类
  • compile(Hibernate 新增)- 执行所有编译任务,包括暂存主类和测试类的资源
  • jar - 生成包含所有已编译类的 jar 归档
  • test - 运行测试
  • publish - 类似 Maven deploy
  • publishToMavenLocal - 将项目 jar 安装到本地 Maven 缓存(即 ~/.m2/repository)。请注意,Gradle 从不使用这个缓存,但它对于测试你的构建与其他本地基于 Maven 的构建是否兼容很有用。
  • eclipse - 生成 Eclipse 项目
  • idea - 生成 IntelliJ/IDEA 项目(尽管首选方法是使用 IntelliJ 的 Gradle 导入)。
  • clean - 清理构建目录

测试和数据库

针对特定数据库进行测试可以通过两种不同的方式实现:

使用 Gradle 的“Matrix Testing Plugin”。

即将推出…

使用“profiles”

Hibernate 构建在 databases.gradle 中定义了几个数据库测试“profiles”。这些 profiles 可以通过 db 构建属性按名称激活,该属性可以作为 JVM 系统属性(-D)或 Gradle 项目属性(-P)传递。下面的示例使用 Gradle 项目属性的方法。

root@kitploit:~
gradle clean build -Pdb=pgsql

要从 IDE 运行测试,你需要确保属性扩展生效。请使用以下命令:

root@kitploit:~
gradle clean compile -Pdb=pgsql

注意:如果你要针对 Maven 中央仓库不可用的 JDBC 驱动程序运行测试,请确保将这些驱动程序添加到本地 Maven 仓库缓存(~/.m2/repository)中,或者(更好)添加到个人 Maven 仓库服务器上。

从 IDE 使用“profiles”运行特定数据库的测试

你可以在任何配置在 databases.gradle profile 中的特定数据库上运行任何测试。

你只需要运行以下命令:

root@kitploit:~
gradlew setDataBase -Pdb=pgsql

或者可以使用快捷版本:

root@kitploit:~
gradlew sDB -Pdb=pgsql

你可以从你要测试的模块中执行此操作,也可以从 hibernate-orm 根文件夹执行。

之后,只需从 IDE 中选择任何测试并像往常一样运行。Hibernate 将从 setDataBase Gradle 任务设置好的 hibernate.properties 文件中读取数据库配置。

下载工具