如何用Java向kafka發(fā)送json數(shù)據(jù)
問(wèn)題描述
在網(wǎng)上都只看到一些Java生產(chǎn)STRING類型的消息。 按照J(rèn)ava的producer類來(lái)看,是可以自定義發(fā)送消息的類型,比如 producer.send(new KeyedMessage<String, HashMap<String , String>>(topic,message); 可是這樣運(yùn)行會(huì)報(bào)錯(cuò),報(bào)錯(cuò)如下,請(qǐng)求高人解答:Exception in thread 'Thread-4' java.lang.ClassCastException: java.util.HashMap cannot be cast to java.lang.String
at kafka.serializer.StringEncoder.toBytes(Encoder.scala:46)at kafka.producer.async.DefaultEventHandler$$anonfun$serialize$1.apply(DefaultEventHandler.scala:130)at kafka.producer.async.DefaultEventHandler$$anonfun$serialize$1.apply(DefaultEventHandler.scala:125)at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33)at scala.collection.mutable.WrappedArray.foreach(WrappedArray.scala:34)at kafka.producer.async.DefaultEventHandler.serialize(DefaultEventHandler.scala:125)at kafka.producer.async.DefaultEventHandler.handle(DefaultEventHandler.scala:52)at kafka.producer.Producer.send(Producer.scala:77)at kafka.javaapi.producer.Producer.send(Producer.scala:33)at com.Model.Producer.kafkaProducer.run(kafkaProducer.java:35)
問(wèn)題解答
回答1:文檔,序列化成String就行了
相關(guān)文章:
1. css - 新手做響應(yīng)式布局, 斷點(diǎn)過(guò)后右側(cè)出現(xiàn)空白,求幫助,謝謝。2. javascript - 關(guān)于<a>元素與<input>元素的JS事件運(yùn)行問(wèn)題3. css3 - 純css實(shí)現(xiàn)點(diǎn)擊特效4. mysql - 查詢字段做了索引為什么不起效,還有查詢一個(gè)月的時(shí)候數(shù)據(jù)都是全部出來(lái)的,如果分拆3次的話就沒(méi)問(wèn)題,為什么呢。5. mysql - 記得以前在哪里看過(guò)一個(gè)估算時(shí)間的網(wǎng)站6. 大家好,我想請(qǐng)問(wèn)一下怎么做搜索欄能夠搜索到自己網(wǎng)站的內(nèi)容。7. ID主鍵不是自增的嗎 為什么還要加null8. MySQL中的enum類型有什么優(yōu)點(diǎn)?9. python - 啟動(dòng)Eric6時(shí)報(bào)錯(cuò):’qscintilla_zh_CN’ could not be loaded10. javascript - vue 怎么渲染自定義組件
