山东大学创新项目智研雅思先锋队 第十周

在语音转换过程中将数据写入数据库

try (Connection conn = DriverManager.getConnection(dbUrl, dbUser, dbPassword)) {
                    // SQL 插入语句
                    String sql1 = "SELECT MAX(idexam) AS max_id FROM exam";
                    PreparedStatement pstmt1 = conn.prepareStatement(sql1);
                    ResultSet rs = pstmt1.executeQuery();
                    //int maxIdExam = rs.getInt("max_id");
                    int maxIdexam =1;
                    if (rs.next()) {
                        maxIdexam = rs.getInt("max_id");
                        // 处理 maxIdexam
                    } else {
                        // 结果集为空,处理方式
                        maxIdexam =1;
                    }
                    // 格式化日期和时间
                    Timestamp currentTimestamp = new Timestamp(System.currentTimeMillis());
                    String sql2 = "INSERT INTO message (idexam,text,voice,time,isUserMessage) VALUES (?,?,?,?,?)";
                    try (PreparedStatement pstmt2 = conn.prepareStatement(sql2)) {
                        // 设置 BLOB 数据
                        pstmt2.setInt(1,maxIdexam);
                        pstmt2.setString(2, aiResponse);
                        pstmt2.setBytes(3,audioBytes);
                        pstmt2.setTimestamp(4,currentTimestamp);
                        pstmt2.setInt(5,0);
                        // 执行插入操作
                        pstmt2.executeUpdate();
                    }
                }
String text = webSocketService.transcribeAudio(yasiFilePath);
            byte[] wavBytes = readWavFile(filePath);
            Timestamp currentTimestamp = new Timestamp(System.currentTimeMillis());
            try (Connection conn = DriverManager.getConnection(dbUrl, dbUser, dbPassword)) {
                // SQL 插入语句
                String sql1 = "SELECT MAX(idexam) AS max_id FROM exam";
                PreparedStatement pstmt1 = conn.prepareStatement(sql1);
                ResultSet rs = pstmt1.executeQuery();
                //int maxIdexam = rs.getInt("max_id");
                int maxIdexam;
                if (rs.next()) {
                    maxIdexam = rs.getInt("max_id");
                    // 处理 maxIdexam
                } else {
                    // 结果集为空,处理方式
                    maxIdexam =2;
                }
                // 格式化日期和时间
                String sql2 = "INSERT INTO message (idexam,text,voice,time,isUserMessage) VALUES (?,?,?,?,?)";
                try (PreparedStatement pstmt2 = conn.prepareStatement(sql2)) {
                    // 设置 BLOB 数据
                    pstmt2.setInt(1,maxIdexam);
                    pstmt2.setString(2, text);
                    pstmt2.setBytes(3,wavBytes);
                    pstmt2.setTimestamp(4,currentTimestamp);
                    pstmt2.setInt(5,1);

                    // 执行插入操作
                    pstmt2.executeUpdate();
                }
            }
         catch (SQLException e) {
            e.printStackTrace();
        }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值