问题标签 [spring-repositories]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
468 浏览

java - 考虑在你的配置中定义一个 'mezg.mezos.sessionmanager.repositories.SessionRepository' 类型的 bean

我目前正在尝试使用 Redis 的 Spring Boot 应用程序。当我尝试执行该程序时,我遇到了一个与 Spring Boot 相关的问题,涉及 redis 存储库。

当我运行应用程序时,我收到以下错误:

下面列出了相关的源文件

服务接口

服务实施

存储库

控制器

主班

Gradle 依赖项

这个论坛上描述了类似的场景,我确实尝试了建议的解决方案,但可以解决这个问题。下面列出了其中一些问题。

堆栈溢出参考

考虑在配置中定义“com.ensat.services.ProductService”类型的 bean

考虑在你的配置中定义一个“包”类型的 bean [Spring-Boot]

考虑在您的配置中定义一个“服务”类型的 bean [Spring boot]

Spring boot CrudRepo 定义一个bean

春季启动+redis

其他参考

http://www.cnblogs.com/exmyth/p/7119225.html

------------更新 1 ------------

尝试使用@ComponentScan@EnableRedisRepositories更新主类

------------------------更新 2 ------------

完整日志

https://gist.github.com/lrrp/3065dff578daa92dacf4bdc78f90c9b5

关于如何修复这个 Spring 引导错误以及在这种情况下要遵循的任何最佳实践的任何建议?

0 投票
1 回答
173 浏览

java - Spring Repository 中的@Query 不更新行也不会出错

我在 Spring 存储库中创建自定义方法

并在服务中调用它:

我在日志中看到:

INF 15:43:45.102 开始
INF 15:43:46.035 更新:0

在数据库中,我有 3 行的CREATED状态。我没有犯错,行没有更新。

0 投票
1 回答
7546 浏览

java - Spring CrudRepository 无法在复合主键中共享生成的 id

我正在尝试使用spring CRUDRepository使用 JPA 数据库模型( User.javaUserInfo.java )将新对象插入数据库。数据库模型与复合主键(UserPK.java)相关,其中一个是自动生成的(字段名为id),第二个(字段名为type)在开头设置。

当我使用CRUDRepository ( UserRepository.java ) 创建新对象时出现错误 - 无法将新对象插入第二个模型 ( UserInfo.java ),因为id为空(第一个模型已正确添加)。我认为问题在于数据库模型中的共享/映射复合主键。我用EntityManager尝试了相同的模型,这不是错误 - 全部都添加了。接下来我使用了@PrimaryKeyJoinColumns注释,但结果与上面相同(但我不确定我是否正确使用它) - CRUDRepository失败并且EntityManager成功。

谁能帮我找到解决方案?如果有人想运行代码,我还会在GitHub 上添加源代码。

下面的日志:

记录CRUD 存储库

记录实体管理器

下面的代码:

主要模型:User.java

第二个模型:UserInfo.java

组合主键:UserPK.java

春天 CRUDRepositoryUserRepository.java

使用EntityManager的存储库:UserRepositoryEM.java

0 投票
2 回答
2847 浏览

spring-boot - 扩展 Spring 数据存储库

我想向<T> T findOrCreate(Supplier<Optional<T>> finder, Supplier<T> factory)我所有的存储库介绍一个。于是新建了一个界面

.

然后我在我的具体存储库中使用这个接口,例如RecipeIngredientRepository:

当我最终将存储库注入我的服务时,我得到以下异常:

它正在我的实体中搜索find属性RecipeIngredient。我不希望它这样做。我认为这与JPA Query Methods有关。所以我将名称从findOrCreate更改xxx为绕过任何查询方法检测 - 没有成功。然后它会搜索一个xxx属性。

是什么让 spring data 寻找这个属性?我正在使用org.springframework.boot:spring-boot-starter-data-jpa.

0 投票
1 回答
43 浏览

hibernate - 具有多个表的方法查询,包括排序?

我不确定我是否通过此任务达到了方法查询的边界。我有两张桌子,一张User桌子和一张Password桌子。AUser可能有多个Passwords(其中最新的是当前的)。

我想在我的User存储库中进行方法查询以获取用户名的“当前” Password

在 SQL 中,它看起来像这样

我尝试过的方法查询是findFirstPasswordOrderByPasswords_CreatedByUsers_Username(String username)

这给了我一个例外:

No property byUsers found for type long! Traversed path: UsersEntity.passwords.created.

我不知道为什么它仍然指向created字段。这对于方法查询来说太多了吗?还是我做错了?

0 投票
0 回答
50 浏览

hibernate - 使用 spring jpa 将 NativeQuery 结果映射到 POJO

我有表 A、B 和 C。它们三个都有各自的 Spring 存储库接口。但我只是使用表 C 来检索 A 中的一些值和 B 中的一些值,使用我的 ICRepository 接口类中的存储库方法之一之上的巨大查询。

我并没有真正在表 C 中存储任何信息。

有没有办法可以删除 Oracle 中的表 C 并使用类 C 作为 pojo 来检索信息。

0 投票
1 回答
2476 浏览

spring-data - @Query SQL中的Spring数据JPA自定义条件

我有以下存储库代码:

此代码不起作用。我希望此查询根据提供的布尔参数获取关闭的会话或打开的会话。

我想根据我的自定义布尔参数编写 HQL 字符串。怎么做?

0 投票
3 回答
106 浏览

java - 如果父级没有 ID,则正确保存 OneToMany 实体

我有 2 个实体:

第二个实体:

我为每个实体有 2 个存储库:

然后我将此 JSON 发送到 cintroller 并注意保存所有产品:

然后我需要保存它:

类别没有 id,当我得到这个 JSON 时,我需要创建所有产品并设置类别,但我没有类别 id,如果我接下来要做:

我为每个产品创建了新的 ctegore,我得到了这个:

但是我需要:

0 投票
2 回答
946 浏览

mysql - Spring JpaRepository findBy...In(Collection) 返回联合而不是交集

我的 JpaRepository 中有一个查询方法

Course通过实例变量查找对象Set<String> attrs。给定一个a带有“foo”和“bar”的集合,我想找到同时包含“foo”Course“bar”的s ,即s与“foo”和“bar”的交集。上面的这个方法返回一个联合。 有没有办法通过 JpaRepository 查询来做到这一点,还是我必须拨打多个电话并自己找到交叉点?attrsCourse

0 投票
3 回答
8864 浏览

spring - 编译时未找到 Spring 数据存储库

我正在尝试在 Spring Boot 应用程序中使用 Spring 数据和存储库,但在编译项目时出现错误。

这是我的实体:

以及相应的存储库:

Autowired我在 WS 控制器中使用它,通过注解生成存储库:

以及应用程序的代码:

但是在编译项目时,我得到:


应用程序无法启动


说明:fr.investstore.ws.SampleController 中的字段 crowdOperationRepository 需要找不到类型为“fr.investstore.repositories.CrowdOperationRepository”的 bean。

行动:考虑在您的配置中定义“fr.investstore.repositories.CrowdOperationRepository”类型的 bean。

Spring不会通过接口自动为存储库生成一个bean吗?我该如何解决这个问题?

编辑:我也尝试将Repository注释(从org.springframework.stereotype.Repository)放到 上CrowdOperationRepository,但我得到了同样的错误