尝试将Crate.io NoSql数据库与现有的Spring Data / Mysql项目一起使用

时间:2016-07-27 16:55:19

标签: spring-data eclipselink crate

我试图将Crate.IO功能添加到现有的Spring Data / Eclipselink / MySql Web应用程序中。对于这个特定用例,我们希望以最轻松的方式将数据保存到MySql和Crate(用于评估目的)。我正在使用Spring-Data-Crate项目,以便能够将Spring Data Repositories与Crate一起使用。

我已经能够使用过滤器设置单独的Crate特定实体管理器,以仅使用实现CrateRepository的repos。我遇到的问题是确定如何将现有的Spring Data / MySql实体类与Crate一起使用。 (或从中衍生出来)

1)如果我使用Spring-Data-Crate注释现有的Spring Data @Entity类 @Table注释,到crate DB的映射将失败因为EclipseLink / JPA将隐藏的持久性字段添加到以下划线开头的实体对象,这显然是spring-data-crate适配器不允许的 < / p>

2)我尝试使用实体继承,其中MySql和Crate实体都可以扩展的基类,只有具有spring数据@Entity注释的MySql实体。不幸的是,这导致 Spring数据失去对基类字段的可见性,除非使用@MappedSuperClass注释基类。但添加此注释会引入隐藏的&#34; _&#34; -prefixed持久性属性到派生的箱子实体。

3)我可以完全使用单独的实体并让它们实现一个通用接口,但是我不能将接口指定为spring数据包存储库的类型。

......不确定从哪里开始

Spring Data Crate适配器项目 - https://github.com/KPTechnologyLab/spring-data-crate Spring Data Crate教程 - https://crate.io/a/using-sprint-data-crate-with-your-java-rest-application/

1 个答案:

答案 0 :(得分:0)

我是来自箱子的约翰内斯。 我们没有以这种方式测试弹簧数据箱的使用,所以如果这应该或不应该工作,我们就不能说明任何信息。 抱歉,约翰内斯