Bom dia, testei hoje e continua a mesma coisa.
Olhei os construtores e não apresenta erro.
Classe jogosDao
package org.example.kotlin_jogos.connection
import org.example.kotlin_jogos.connection.ConexaoBD.obterConexao
import org.example.kotlin_jogos.modelos.Jogo
class JogosDAO {
fun getJogos(): List<Jogo> {
val listaJogos = mutableListOf<Jogo>()
val connection = obterConexao()
if (connection != null) {
try {
val statement = connection.createStatement()
val resultado = statement.executeQuery("SELECT * FROM JOGOS")
while (resultado.next()) {
val id = resultado.getInt("id")
val titulo = resultado.getString("titulo")
val capa = resultado.getString("capa")
val descricao = resultado.getString("descricao")
val preco = resultado.getDouble("preco")
val jogo = Jogo(titulo, capa, preco, descricao, id)
listaJogos.add(jogo)
}
statement.close()
} finally {
connection.close()
}
}
return listaJogos
}
fun adicionarJogo(jogo: Jogo) {
val connection = obterConexao()
val insert = "INSERT INTO JOGOS (TITULO, CAPA, PRECO, DESCRICAO) VALUES (?, ?, ?, ?)"
if (connection != null) {
try {
val statement = connection.prepareStatement(insert)
statement.setString(1, jogo.titulo)
statement.setString(2, jogo.capa)
statement.setDouble(3, jogo.preco)
statement.setString(4, jogo.descricao)
statement.executeUpdate()
statement.close()
} finally {
connection.close()
}
}
}
}
Classe Jogo
package org.example.kotlin_jogos.modelos
import com.google.gson.annotations.Expose
import java.math.BigDecimal
data class Jogo(
@Expose val titulo: String,
@Expose val capa: String) {
private var id: Int = 0
var descricao:String? = null
var preco = 0.0
constructor(titulo: String, capa: String, preco: Double, descricao: String, id: Int):
this(titulo, capa) {
this.preco = preco
this.descricao = descricao
this.id = id
}
override fun toString(): String {
return "Meu Jogo: \n" +
"titulo: $titulo, \n" +
"capa: $capa, \n" +
"Preço R$:$preco, \n" +
"descricao: $descricao, \n" +
"id: $id"
}
}