gpt4 book ai didi

Cassandra 抛出 CodecNotFoundException [bigint <-> java.util.Date]

转载 作者:行者123 更新时间:2023-12-05 00:52:31 24 4
gpt4 key购买 nike

我有一个 java 实体,它有一个 Date 类型的属性,我有一个将 date 属性存储到 bigint cloumn 的数据库表,但是当我运行代码时,它给了我这个错误:

com.datastax.driver.core.exceptions.CodecNotFoundException: Codec not found for requested operation: [bigint <-> java.util.Date]



你能帮我解决 cassandra 抛出的异常和解决方案吗?

最佳答案

您正在将 java.util.Date 插入 bigint 列,这就是您收到此错误的原因。

使用 getTime()方法以毫秒为单位获取时间,插入 bigint 列很长。

例子 :

Date date = ; // you have the date
long timeInMilis = date.getTime();

使用 timeInMilis插入 Cassandra

或者

您可以将列类型 bigint 更改为时间戳,然后您可以插入 java.util.Date直接,不必以毫秒为单位获取时间,
-------------------------------------
| CQL3 data type | Java type |
|-------------------|----------------|
| bigint | long |
|-------------------|----------------|
| timestamp | java.util.Date |
--------------------------------------

更多关于 CQL - Java 映射: https://docs.datastax.com/en/developer/java-driver/3.1/manual/#cql-to-java-type-mapping

关于Cassandra 抛出 CodecNotFoundException [bigint <-> java.util.Date],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42557491/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com