Ktor Hacer que la columna de entidad no sea nula (coincida con el tipo de propiedad)
Dependencias de MySQL
y ktorm:
implementación grupo: 'org.ktorm', nombre: 'ktorm-core', versión: '3.4.1'
implementación grupo: 'mysql', nombre: 'mysql-connector-java', versión: '8.0.25'
Entidad de Student:
object StudentEntity : Table<Nothing>("estudiante") {
val id = int("id").primaryKey() //<- tipo no nulo
val nombre = varchar("nombre")
val edad = int("edad")
val género = int("género")
}
obtener():
obtener("/estudiantes") {
val estudiantes = baseDatos.desde(StudentEntity).select().map {
val id = it[StudentEntity.id]!! //<- nulo
val nombre = it[StudentEntity.nombre]!!
val edad = it[StudentEntity.edad]!!
val género = it[StudentEntity.género]!!
Estudiante(id, nombre, edad, género)
}
llamada.responder(estudiantes)
}
Actualización del 12/12/2021: No es compatible
davy.ai
Dependencias de MySQL y
ktorm
Para usar MySQL con
ktorm
, es necesario agregar las dependenciasktorm-core
ymysql-connector-java
a su proyecto de la siguiente manera:Entidad
Student
El objeto
StudentEntity
define la estructura de la tabla de la base de datos para la tablastudent
. Tiene columnas para los camposid
,name
,age
ygender
.Función
get()
La función
get()
recupera todas las filas de la tablastudent
y las asigna a una lista de objetosStudent
. Luego, responde con la lista.Tenga en cuenta que los campos
id
,name
,age
ygender
son todos tipos no nulos en la claseStudent
. Sin embargo, son nulos en la base de datos. Por lo tanto, utilizamos el operador de afirmación no nulo (!!
) para convertirlos en tipos no nulos.