问题标签 [spring-data-keyvalue]

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 投票
1 回答
1244 浏览

java - 如何引导 Spring Data KeyValue?

Spring Data KeyValue看起来非常适合快速构建模拟微服务。如何使用数据引导它?

我尝试向 中添加东西KeyValueAdapter,但是通过自己指定 bean,我最终得到了s 与不同Repository的 s 连接,因此没有可用的数据。 KeyValueAdapter

0 投票
0 回答
389 浏览

java - Spring Data 键值派生删除支持

Spring Data Key Value 是否支持派生删除查询方法?它对我不起作用。

我扩展Repository了,声明了一些CrudRepository方法,并将这些派生的查询方法添加到其中:

除了 2 个派生的删除查询方法外,所有单元测试都通过了。removeByChatId返回预期列表,但不删除任何内容。deleteByChatId抛出这个UnsupportedOperationException

我正在使用 Spring Boot 1.3.3.RELEASE,它依赖于 Spring Data Key Value 1.0.4.RELEASE。

0 投票
2 回答
11103 浏览

spring - 具有抽象类/继承的 Spring Data Rest Repository

我无法通过类继承工作获得 Spring Data Rest。

我想要一个 JSON 端点来处理我所有的具体类。

回购:

抽象类:

具体类:

现在用 调用POST /abstractFoos{"type":"MY_FOO"},它告诉我:java.lang.IllegalArgumentException: PersistentEntity must not be null!

这似乎发生了,因为 Spring 不知道MyFoo.

有没有办法告诉 Spring Data RESTMyFoo而无需为其创建存储库和 REST 端点?

(我使用的是 Spring Boot 1.5.1 和 Spring Data REST 2.6.0)

编辑:

应用程序.java:

0 投票
3 回答
688 浏览

oracle-nosql - Oracle KV 的 Spring Data Key Value 实现

我想将 Oracle NoSQL 数据库与 Spring 数据一起使用。目的是通过 spring 数据存储库访问数据,甚至在其之上使用 spring 数据。所以我认为 spring-data-keyvalue 项目会帮助我实现 Oracle NoSQL KV 的适配器。

我试图了解 spring-data-keyvalue 的文档(http://docs.spring.io/spring-data/keyvalue/docs/current/reference/html/#key-value.core-concepts),但没有不明白。有关如何从头开始实现适配器的示例/教程将非常有帮助。

我所拥有的是这个配置类,我在其中提供了一个自定义 KeyValueAdapter。现在,如果我使用 CrudRepository 方法,它会使用我的自定义适配器。

OracleKeyValueAdapter 是 KeyValueAdapter 的一个实现。我从 spring-data-keyvalue-redis 项目(https://github.com/christophstrobl/spring-data-keyvalue-redis/blob/master/src/main/java/org/springframework/data/keyvalue/ redis/RedisKeyValueAdapter.java )

现在我正在尝试实现这个 OracleKeyValueAdapter,但我不知道这是否有意义。

你能帮助我吗?

0 投票
1 回答
1601 浏览

spring - Spring Data Hazelcast 存储库不工作

我尝试将我的 Springboot(v1.4.2) 应用程序与 Hazelcast 集群连接以查找存储的数据。为此,我使用了一个 hazelcast-client 实例,并创建了一个 HazelcastRepository 来搜索我的数据。

问题是我的存储库没有找到任何数据。当我用 findAll() 测试时它总是返回一个空列表,当我用 findOne() 测试时它总是返回 null:

以下是我的服务/存储库/域/配置代码:

这是我的回购和域名:

这是我的 hazelcast-client 配置:

在我的 pom 中,我使用这些依赖项:

我没有错误,没有例外。好像我的 Hazelcast 集群中没有数据,但我知道有。如果我像这样从 Hazelcast-Cluster 连接并加载地图,则使用我的客户端:

然后我得到了我的数据,但是如果我尝试使用 Hazelcast 存储库,我什么也找不到。有人可以告诉我有什么问题吗?

0 投票
1 回答
1022 浏览

spring - 是否可以使用 RedisRepositories 和 KeyValueRepositories?

我正在尝试在一个项目中使用@EnableRedisRepositoriesand@EnableMapRepositories我收到以下错误消息:

相关原因:org.springframework.beans.factory.UnsatisfiedDependencyException:创建名为'redisConverter'的bean时出错:通过构造函数参数0表示的不满足依赖关系:无法转换类型[org.springframework.data.keyvalue.core.mapping. context.KeyValueMappingContext] 到所需类型 [org.springframework.data.redis.core.mapping.RedisMappingContext]:无法将类型 'org.springframework.data.keyvalue.core.mapping.context.KeyValueMappingContext' 的值转换为所需类型' org.springframework.data.redis.core.mapping.RedisMappingContext'; 嵌套异常是 java.lang.IllegalStateException:无法将类型 'org.springframework.data.keyvalue.core.mapping.context.KeyValueMappingContext' 的值转换为所需的类型 'org.

那么是否可以在同一个项目中同时使用两者?

0 投票
0 回答
781 浏览

spring-boot - 带有 JSON 转换器的 Spring Data Redis 给出“属性路径不能为空或空”。

我正在尝试将 CrudRepository 与 spring-data-redis 和生菜结合使用。按照我能找到的所有建议,我已经使用@ReadingConverters 和@WritingConverters 配置了我的spring-boot 2.1.8 应用程序,但是当我尝试使用存储库时,我得到“属性路径不能为空或空”。

做一些调试,这似乎是由org.springframework.data.redis.core.convert.MappingRedisConverter:393

第二个参数是路径。MappingRedisConverter这将在运行此代码的第 747 行结束:

最终,即使数据已被序列化,具有空路径的 put 最终也会org.springframework.data.redis.core.convert.Bucket:77失败。Assert.hasText(path, "Path to property must not be null or empty.");

这是 spring-data-redis 的错误还是我必须配置其他东西?

RedicsConfig.java

我刚刚在这里包含了一个写作转换器,但有几个读写转换器......

要写的对象:

和回购:

任何人都可以建议我错过了什么,或者如果这是我应该在 spring-data-redis 上提出的错误?

0 投票
1 回答
745 浏览

spring-boot - 如何使用两个数据源(MapRepository 和 H2 JPARepository)设置 Spring Boot?

我正在尝试使用两个数据源建立一个 Spring Boot 项目。第一个数据源是 H2 数据库,第二个是 MapRepository。两个存储库将共享同一个实体。

我可以设法用两个 H2 数据库设置一个项目,但是当我尝试设置一个 MapRepository 而不是第二个 H2 数据源时,我收到以下错误:

我已经尝试添加 ComponentScan 并向 MapRepository 添加存储库注释,但无法弄清楚为什么没有为它创建 bean。两个存储库都位于单独的包中,这些包设置为 EnableMapRepositories/EnableJpaRepositories 注释的 basePackages。对于 SQLRepository,我创建了一个带有驱动程序属性等的配置类。我不确定 MapRepositories 是否也需要类似的东西,并且找不到有关它的有用文档。

我对 Spring Boot 并没有真正的经验,因此第一个问题是是否可以进行这样的设置?如果是,我应该如何配置它?

申请开始:

地图存储库:

实体存储库:

我尝试访问两个存储库的 StorageHandler :

基本实体:

SQL配置:

SQL存储库

应用程序.yml