cassandra @table动态更改名称

时间:2018-07-19 16:10:53

标签: spring-boot cassandra spring-data

我有一个API的多个使用者,他们将相似的数据发布到我的API中。我的API需要使用此数据并将数据持久保存到由使用者名称标识的cassandra表中。例如。 Consumername_TableName

我的spring boot实体使用@Table注释,这不允许我动态更改表名称。在线上的大多数建议都建议我们不要尝试改变它。

但是在我的场景中,确定所有使用者并提前创建表听起来不对。将来,我希望能够无缝地将使用者添加到我的API中。

我想使用API​​调用中传递的变量作为cassandra表名称的前缀。这是我可以实现的吗?

1 个答案:

答案 0 :(得分:1)

对于初学者:您不能在不重新编译的情况下更改批注-它们被烘焙到已编译的类文件中。这不是正确的方法。

为什么不将所有内容放在一个表中并让使用者成为密钥的一部分?这应该为您提供相同的功能,而没有任何麻烦。