Как я могу использовать сканированную переменную (штрих-код) в запросе SQL - PullRequest
2 голосов
/ 11 июля 2019

Я пытаюсь использовать отсканированный штрих-код в качестве переменной в запросе SQL.Я использую проект Google ML Kit Quick Start .У меня есть функция подключения и запроса, сделанные с помощью jtds1.3.1.Я просто не могу получить необработанное значение для использования в запросе.

Как я могу вызвать функцию запроса с необработанным значением после сканирования штрих-кода?Как я могу хранить необработанное значение в переменной каждый раз при сканировании штрих-кода?

override fun onSuccess(
        originalCameraImage: Bitmap?,
        barcodes: List<FirebaseVisionBarcode>,
        frameMetadata: FrameMetadata,
        graphicOverlay: GraphicOverlay
    ) {
        graphicOverlay.clear()

        originalCameraImage?.let {
            val imageGraphic = CameraImageGraphic(graphicOverlay, it)
            graphicOverlay.add(imageGraphic)
        }

        barcodes.forEach {
            val barcodeGraphic = BarcodeGraphic(graphicOverlay, it)
            graphicOverlay.add(barcodeGraphic)
        }
        graphicOverlay.postInvalidate()
    }

1 Ответ

1 голос
/ 15 июля 2019

Вы, вероятно, хотите что-то вроде этого:

override fun onSuccess(
        originalCameraImage: Bitmap?,
        barcodes: List<FirebaseVisionBarcode>,
        frameMetadata: FrameMetadata,
        graphicOverlay: GraphicOverlay) {

    String barcodeValue = barcodes.get(0).getRawValue();

    PreparedStatement stmt = dbConnection.createStatement("insert into scanned_barcodes(barcode) values (?)");
    stmt.setString(1, barcodeValue);
    stmt.execute();
}

Отсканированные штрих-коды находятся в списке barcodes.Доступ к значению можно получить с помощью getRawValue().

. Остальной код является обычным кодом JDBC: создайте оператор, свяжите текущее значение и выполните его.

...