Мы конвертируем микро сервисы java Spring Boot в Котлин.В Java Spring Boot у нас есть хранимая процедура Oracle, передающая параметр и принимающая параметр ответа в API.При конвертации в Kotlin мы застряли в вызове хранимой процедуры Oracle в Kotlin.Пожалуйста, найдите код, в котором мы пытались вызвать хранимую процедуру.Пожалуйста, обратитесь к закомментированной строке кода, которая не работает, мы не получаем ничего в примерах кода Kotlin.
package com.manoj.common
import org.springframework.web.bind.annotation.RestController
import java.util.concurrent.atomic.AtomicLong
import org.springframework.web.bind.annotation.GetMapping
import org.springframework.web.bind.annotation.RequestParam
import org.springframework.context.annotation.ComponentScan
import java.sql.Connection
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.jdbc.core.JdbcTemplate
import java.sql.CallableStatement
import javax.sql.DataSource
import oracle.jdbc.OracleTypes
import java.sql.Statement
import java.sql.PreparedStatement
import java.sql.ResultSet
@RestController
class GreetingController
{
val counter = AtomicLong()
@Autowired
lateinit var datasource: DataSource;
@GetMapping("/CallProcedure")
fun greeting(@RequestParam(value = "name", defaultValue = "World") name: String)
{
print("Welcome Chetan")
try {
val conn: Connection = datasource.getConnection();
print("Connection : " + conn)
var callableStatement: CallableStatement = conn.prepareCall("{call Get_Sell_Txn_Status(?,?,?,?,?)}")
//callableStatement.setString(1, "8917102");
//callableStatement.setString(2, "8917");
//callableStatement.setString(3, "bbd30d20-028d-47ea-98c6-2554e869f1af:8917");
//callableStatement.registerOutParameter(4, OracleTypes.CURSOR);
//callableStatement.registerOutParameter(5, OracleTypes.CURSOR);
//callableStatement.executeUpdate();
//var resultSet ResultSet = as ResultSet callableStatement.getObject(4)
var preparedStatement: PreparedStatement? = null
preparedStatement = conn.prepareStatement("select * from KOSHTAKRUTI_LOGIN")
val rs: ResultSet = preparedStatement.executeQuery()
while (rs.next())
{
println(rs.getString(3)+" "+rs.getString(4))
}
print("You are here")
}
catch (e: Exception) {}
}
}
Как вызвать хранимую процедуру из Kotlin?