Spring Data - JPA是Spring Data伞形项目的一部分,可以轻松实现基于JPA的存储库
无法实例化 JsonBinaryType 的 AttributeConverter
我最近将我的springboot版本升级到了3.0.2。此外,hibernate 依赖项已升级到 6.1.6.Final。 我正在使用 hypersistence util 中的 hibernate-type 60。 ...
为什么Spring Data Jpa的复合主键查询findById会生成in查询?
Spring Boot版本3.2.0 休眠版本 6.3.1.Final jpa实体信息 @数据 @IdClass(值 = SeasonEntityPrimary.class) @实体 @Table(名称=“季节”) 公共类 SeasonEntity 实现...
在控制台中从 Spring JPA 查询与原始 SQL 获取不同的结果
我有以下 SQL 查询,当我在 MySQL 控制台中运行它时,它按预期返回一个结果: 从帐户 a 中选择不同的 a.* INNER JOIN contact c ON a.id = c.accountId WHERE a.
通过特定方法执行的代码在运行时更改 order_updates 标志
jpa.properties.hibernate.order_updates 在我的应用程序 yaml 中默认设置为 true。 我想将其设置为 false 以执行特定方法,这使得 JPA 存储库调用以 w...
在 Spring Data Rest 中,如何防止 DELETE HTTP 方法从我的 JpaRepository 导出?
我正在使用 spring-data-rest 并且我有一个像这样的 JpaRepository : @RepositoryRestResource(路径=“项目”) 公共接口 ProjectsRepository 扩展了 JpaRepository 我正在使用 spring-data-rest 并且我有一个像这样的 JpaRepository: @RepositoryRestResource(path = "projects") public interface ProjectsRepository extends JpaRepository<MetricsProjects, Integer> {...} 我的存储库界面: @RepositoryRestResource(path = "projects") public interface ProjectsRepository extends JpaRepository<MetricsProjects, Integer> { List<MetricsProjects> findByProjectName(String projectName); @Override @RestResource(exported = false) public void deleteById(Integer id); @Override @RestResource(exported = false) public void delete(MetricsProjects entity); @Override @RestResource(exported = false) public void deleteAll(Iterable<? extends MetricsProjects> entities); @Override @RestResource(exported = false) public void deleteAll(); @Override @RestResource(exported = false) public void deleteInBatch(Iterable<MetricsProjects> entities); @Override @RestResource(exported = false) public void deleteAllInBatch(); } 我还添加了disableDefaultExposure(),正如某处建议的那样。 我的配置文件: @Configuration public class SpringDataRestConfiguration implements RepositoryRestConfigurer { @Override public void configureRepositoryRestConfiguration(RepositoryRestConfiguration restConfig) { restConfig.disableDefaultExposure(); } } 但是我仍然看到从 Swagger-UI 中公开的 DELETE 方法,我该如何防止这种情况? 为 DELETE 端点创建一个控制器方法并返回 405 Method Not Allowed。 为了禁用 Swagger(Springfox 库)中特定端点的显示,我在存储库类中的关联方法上添加了注释 ApiIgnore : @Override @ApiIgnore @RestResource(exported = false) public void deleteById(Integer id); 将configureRepositoryRestConfiguration修改为 @Override public void configureRepositoryRestConfiguration(RepositoryRestConfiguration restConfig) { restConfig.getExposureConfiguration() .forDomainType(put the class type here) .withItemExposure((metadata, httpMethods) -> httpMethods.disable(HttpMethod.DELETE)) .withCollectionExposure((metadata, httpMethods) -> httpMethods.disable(HttpMethod.DELETE)); } 将此处的类类型替换为 className.class,例如,如果 className 是 MetricsProjects,则将 MetricsProjects.class 放在那里。 这是附加信息。
Hibernate 统计信息未按预期计算 queryExecutionCount
通过我的代码,我在实体之间的多对一关系中强制执行 n + 1 问题。 为了检查是否存在 n + 1 问题,我设置了一个测试。 运行测试时我还可以看到...
Spring Data JPA - JpaRepository 中的自定义排序
我正在将 Spring Data JPA 与 Spring Data REST 结合使用,并且我已经为我的 Thing 实体创建了一个 JpaRepository。 @存储库 公共接口 ThingRepository 扩展 JpaRepository { @
我正在学习 Spring Boot,到目前为止,使用 Spring JPA 来管理数据库一切都很好,直到我尝试删除具有嵌入密钥的实体。 相关实体如下: @Se...
Spring JPA findAll() 在 where 子句中添加附加列
我是 Spring Boot 和 JPA 的新手。 我有一个实体类作为 Deal,它有几个字段,如 dealId、name、status 等,它扩展了一个具有 id、createdBy、
我正在开发一个 Spring Boot 项目,使用 JPA 连接到我的数据库。我想进行本机查询来选择某些特定字段,但它不允许我这样做。比如我只想获取id,
我对 JUnit 和为我的 Java Springboot 应用程序编写测试仍然有些陌生。 我想测试服务中的一个功能,如下所示: 公共UploadedScanQueryFile存储(MultipartF...
带有任意 AND 子句的动态 spring data jpa 存储库查询
我正在使用 Spring data jpa 存储库,需要提供不同字段的搜索功能。搜索前输入字段是可选的。我有 5 个字段,分别是员工编号、姓名、已婚、
Hibernate 6 迁移后无法将 [B 转换为 java.util.UUID
迁移到springboot 3.1.2后,从数据库获取结果导致Cannot cast [B to java.util.UUID postgresql 列定义为“bytea”数据类型,并映射到 java.util.UUID
我无法分享当前应用程序中的特定代码片段,但结构主要由实体和存储库类组成。 我们遇到了 PATCH 方法的问题。预期的
公共接口AreaRepository扩展了JpaRepository,JpaSpecificationExecutor{ @Query("来自sup为空的区域") 列表 findProvinces(); ...
Spring boot 3.2.x 升级后,ZoneddateTime 始终以 UTC 格式保存在数据库中
工作场景: 服务-A:使用 Java 8,Spring boot 2.7.x 在java对象中设置ZoneddateTime(“America/New_York”)并添加 它在 RabbitMQ 队列中。 服务-B:使用 Java 8 、Sp...
我有一个SpringBoot应用程序。我的控制器上的端点之一是 DELETE /item/{id},而另一个端点是 GET /item/{id}。 这两者都使用@
我想在我的 Spring Boot 应用程序上实现本地化。基于消息束的本地化工作正常。但我需要通过从数据库读取区域设置消息来实现相同的功能
SpringBoot:两个数据源配置DDL AUTO不起作用
我正在构建一个连接到两个数据源(即两个 MySQL DB)的组件。我正在使用 QueryDSL,因此我需要每个数据源的实体管理器。为此,我创建了以下配置类。 对于
在 MYSQL 8 和 Spring boot 中处理日期比较,无需毫秒
我们正在将项目从 Mysql 5 升级到 Mysql 8。日期处理中的数据库查询出现奇怪的问题。 在 MySQL 5 上,将数据保存到数据库时,日期通常以 'yyyy-MM-dd HH:...