import Ġkotlinx . serialization . Serializable Ċ import Ġorg . jetbrains . ex posed . dao . Int Id Table Ċ import Ġorg . jetbrains . ex posed . sql . Database Ċ Ċ object ĠDB Ġ{ ĊĠĠĠ Ġprivate Ġval Ġhost Ġ= ĠSystem . getenv (" DB _ HOST ") Ġ?: Ġ" localhost " ĊĠĠĠ Ġprivate Ġval Ġport Ġ= ĠSystem . getenv (" DB _ PORT ") ?. toInt OrNull () Ġ?: Ġ 5 4 3 2 ĊĠĠĠ Ġprivate Ġval Ġdb Name Ġ= ĠSystem . getenv (" DB _ NAME ") Ġ?: Ġ" cats _ db " ĊĠĠĠ Ġprivate Ġval Ġdb User Ġ= ĠSystem . getenv (" DB _ USER ") Ġ?: Ġ" cats _ admin " ĊĠĠĠ Ġprivate Ġval Ġdb Password Ġ= ĠSystem . getenv (" DB _ PASSWORD ") Ġ?: Ġ" abcd 1 2 3 4 " ĊĠĠĠ Ġfun Ġconnect () Ġ= ĠDatabase . connect ( ĊĠĠĠĠĠĠĠ Ġ" jdbc : postgresql :// $ host :$ port /$ dbName ", ĊĠĠĠĠĠĠĠ Ġdriver Ġ= Ġ" org . postgresql . Driver ", ĊĠĠĠĠĠĠĠ Ġuser Ġ= Ġdb User , ĊĠĠĠĠĠĠĠ Ġpassword Ġ= Ġdb Password ĊĠĠĠ Ġ) Ċ } Ċ Ċ object ĠC ats Table Ġ: ĠInt Id Table () Ġ{ ĊĠĠĠ Ġval Ġname Ġ= Ġvarchar (" name ", Ġ 2 0 ). unique Index () ĊĠĠĠ Ġval Ġage Ġ= Ġinteger (" age "). default ( 0 ) Ċ } Ċ Ċ @ Serializable Ċ data Ġclass ĠCat ( ĊĠĠĠ Ġval Ġid : ĠInt , ĊĠĠĠ Ġval Ġname : ĠString , ĊĠĠĠ Ġval Ġage : ĠInt Ċ )