gpt4 book ai didi

java - IntelliJ IDEA 对 Spring Boot 项目的持久化支持

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:30:55 24 4
gpt4 key购买 nike

我尝试使用 JPA 创建一个 Spring Boot 2 项目,以使用 Hibernate 访问 MySQL 数据库。我在 http://start.spring.io/ 上创建了一个 Gradle 项目具有 JPA 和 MySQL 依赖项并导入 IntelliJ IDEA 2017.1 Ultimate

默认情况下,持久性工具窗口不存在。我搜索了解决方案并找到了许多不同的答案,并且知道我有点困惑应该如何配置我的项目。正确的做法是什么?

  1. 我应该向我的项目添加什么框架支持?

    • Spring 数据 JPA
    • hibernate
    • JPA
  2. 我应该如何添加它们?

    • 右键单击我的模块并“添加框架支持”(我可以在此处选择 Spring Data JPA 和 Hibernate)
    • Project Structure -> Facets -> Add(这里我可以选择Hibernate和JPA)
  3. 如果我的项目名称是 db 并且我有 db_main 和 db_test 模块,那么我应该将 Facet 附加到哪一个?

    • 数据库
    • db_main

目前我添加了 JPA Facet 和 Hibernate 提供程序并添加了 persistence.xml。所以我有持久性窗口。

但是,如果我尝试生成实体,我会选择数据源、表、包,但没有任何反应。我的意思是没有错误消息,只是窗口关闭,就好像它会成功一样,但 xml 中没有任何更改,也没有生成任何实体。

最佳答案

在尝试了很多在网上找到的解决方案之后,这里对我有用。我希望这对某人有所帮助。

我使用的是 IntelliJ IDEA 2017.1 Ultimate

第 1 步。

我使用 Gradle 和内置向导创建了一个 Spring Boot (2.0.0 M5) 项目并选择 WebJPAMySQL 依赖项。 enter image description here

这为您提供了一个非常简单的项目结构,但持久性工具 不可用: enter image description here

第 2 步。

JPA 添加到主模块的 Project Structure 窗口中的 Facets,并将 Default JPA Provider 设置为 Hibernate .

请注意,没有添加任何描述符。

enter image description here

因此,持久性工具 窗口现在可用,它自动包含实体 作为持久性单元。

enter image description here

第 3 步。

数据库工具窗口中,将新的数据源添加到您的项目,并在 application.properties 文件中设置数据源属性。

enter image description here

第 4 步。

在持久性工具窗口中,右键单击实体并选择生成持久性映射按数据库模式

enter image description here

现在您可以选择要为哪些表生成实体:

enter image description here

IDEA 将为您生成实体类。

enter image description here

第 5 步。

此时,如果您打开 JPA 控制台 并编写您的 HQL 或 JPL 查询,它将失败。在使用控制台之前,您需要重建您的项目。

enter image description here

关于java - IntelliJ IDEA 对 Spring Boot 项目的持久化支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46892039/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com