到目前为止,我发现了如何替换Javalin json映射器:
https://javalin.io/documentation#configuring-the-json-mapper
但我不想替换它,只想添加一些杰克逊模块,比如这个:
https://www.ktorm.org/api-docs/org.ktorm.jackson/-ktorm-module/index.html
否则,Javalin无法序列化ktorm实体,示例代码这里。
发布于 2022-04-03 00:03:19
解决了!
在JavalinConfig中,可以设置JsonMapper的实现
默认实现接受一个ObjectMapper作为参数,所以我可以这样做:
// custom config to make ktor and jackson behave
val mapper = ObjectMapper()
mapper.registerModule(JavaTimeModule())
mapper.registerModule(KotlinModule.Builder().build())
mapper.registerModule(KtormModule())
// spin up app
val app = Javalin.create {
it.jsonMapper(JavalinJackson(mapper))
}.start(3000)然后Javalin和Ktorm完美地结合在一起。
更新:
https://stackoverflow.com/questions/71721581
复制相似问题