如何将生产的数据存储在数据库中?

问题描述 投票:-1回答:1

我在java上创建了一个kafka生产者,工作正常,现在我试图将生产的数据存储在mySQL数据库中,但我不知道如何存储。

try {
           String MyUrl = "jdbc:mysql://130.2.2.2/pfa";
           Class.forName("com.mysql.jdbc.Driver"); 
           Connection con = DriverManager.getConnection(MyUrl, "root", "");
           Statement stm = con.createStatement();
           ResultSet rs = stm.executeQuery("select * from tmp");

           while(rs.next()) {
               producer.send(new ProducerRecord<String, String>("test",rs.getString(1)));
               con.close();
           }
       }catch(Exception e) {System.out.println(e);}

关于发送数据到数据库的任何帮助是非常感激的

java mysql database apache-kafka kafka-producer-api
1个回答
1
投票

我不确定我是否理解你期望从这段代码中发生什么。

  1. 你是从数据库中读取数据,而不是插入到数据库中。

  2. 你在每次循环迭代后都会关闭数据库连接,这意味着你会在第二次循环时得到一个数据库已经关闭的异常,因此结果集也可能会终止(我对那些是否是懒惰对象有点模糊不清)。

我建议你关注一下JDBC连接器的深度挖掘?https:/dev.tormoffkafka-connect-jdbc-sink-tips-tricks-video-walkthrough-2egf。

我复制粘贴的字面意思是,因为作者说它的作品

这永远不会是学习任何东西的好方法。你可以阅读代码,然后把它全部打出来,边打边给自己解释...... 但千万不要盲目地复制一些你认为能解决你问题的东西。

© www.soinside.com 2019 - 2024. All rights reserved.