refactor: better SerializersModule structure

This commit is contained in:
server_main
2026-08-18 10:40:18 +00:00
parent 77cf75a2be
commit 1bacf534b9
2 changed files with 6 additions and 8 deletions
@@ -1,7 +1,9 @@
package club.itstudio.itmanager.config
import club.itstudio.itmanager.utils.customSerializersModule
import club.itstudio.itmanager.utils.BigDecimalSerializer
import kotlinx.serialization.json.Json
import kotlinx.serialization.modules.SerializersModule
import kotlinx.serialization.modules.contextual
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration
@@ -10,7 +12,9 @@ class SerializationConfig {
@Bean
fun kotlinxSerializationJson(): Json = Json {
serializersModule = customSerializersModule
serializersModule = SerializersModule {
contextual(BigDecimalSerializer)
}
ignoreUnknownKeys = true
isLenient = true
encodeDefaults = false
@@ -9,8 +9,6 @@ import kotlinx.serialization.encoding.Decoder
import kotlinx.serialization.encoding.Encoder
import kotlinx.serialization.json.JsonDecoder
import kotlinx.serialization.json.JsonPrimitive
import kotlinx.serialization.modules.SerializersModule
import kotlinx.serialization.modules.contextual
import java.math.BigDecimal
object BigDecimalSerializer : KSerializer<BigDecimal> {
@@ -29,7 +27,3 @@ object BigDecimalSerializer : KSerializer<BigDecimal> {
return element.content.toBigDecimal()
}
}
val customSerializersModule = SerializersModule {
contextual(BigDecimalSerializer)
}