我正在使用 Quarkus 和 PanacheRepository 进行一些测试,但在更新实体数据时遇到了麻烦。更新不起作用,字段值未更新。
简而言之:我创建一个实体并保留数据,然后在另一个请求中我使用从数据库中获取实体repository.findById(id);,更改某些字段值,但新值未保留在数据库中。我试过打电话repository.persist(person); after 但行为是一样的,数据没有更新。
我用 Quarkus 版本 1.9.0.Final, 1.9.0.CR1, 1.8.3.Final 试过这个
我正在使用 postgreSQL 12。我也尝试过使用 mysql 5.7.26
我仅使用 Eclipse 2020-06 (4.16.0) 来编写代码,并在命令行中运行该应用程序,使用: ./mvnw compile quarkus:dev
我创建了一个全新的简单应用程序,行为是相同的。以下是主要配置和一些代码片段:
pom.xml
<properties>
<compiler-plugin.version>3.8.1</compiler-plugin.version>
<maven.compiler.parameters>true</maven.compiler.parameters>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<quarkus-plugin.version>1.9.0.Final</quarkus-plugin.version>
<quarkus.platform.artifact-id>quarkus-universe-bom</quarkus.platform.artifact-id>
<quarkus.platform.group-id>io.quarkus</quarkus.platform.group-id>
<quarkus.platform.version>1.9.0.Final</quarkus.platform.version>
<surefire-plugin.version>3.0.0-M5</surefire-plugin.version>
</properties>
<dependencies>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-resteasy-jsonb</artifactId>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-hibernate-orm-panache</artifactId>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-jdbc-postgresql</artifactId>
</dependency>
</dependencies>
Run Code Online (Sandbox Code Playgroud)
应用程序属性:
quarkus.datasource.db-kind = postgresql
quarkus.datasource.username = theusername
quarkus.datasource.password = thepassword
quarkus.datasource.jdbc.url = jdbc:postgresql://localhost:5432/testpanache
# drop and create the database at …Run Code Online (Sandbox Code Playgroud)