[英]Java map object to several variants JSON
如何在沒有鏈DOMAIN_OBJECT-> DTO-> JSON的情況下將域對象映射到幾個不同的JSON對象(幾個DTO)? 我有一個大的領域對象和十多個表示形式。 當我使用structMap
將域對象映射到特定的DTO,然后使用jackson將序列化到JSON時,我花費了大量時間。
是否有任何工具可以將域對象映射到不帶中間層DTO的服務器變體JSON?
我真的不知道您的用例,但是請注意,如果您使用Jackson,我想您正在使用ObjectMapper
。 ObjectMapper
是一個昂貴的對象,您應該盡可能地重用(ergo,將其聲明為static
和final
),因為當多次轉換同一對象時,它會在后台進行大量緩存。
更好的是,從ObjectMapper
獲得ObjectWriter
和/或ObjectReader
,它們是不可變的並且是線程安全的(如果要在運行時更改其配置,ObjectMapper會很棘手),它們應該可以提高性能。
最后一件事,但是我從來沒有走那么遠,您可以編寫自定義的序列化器/反序列化器,但是我看到復雜性明顯上升了(因此,維護起來會更加困難)。
如果使用的是字符串,請仔細檢查是否使用StringBuilder(或在多線程用例中使用StringBuffer),並僅在必要時進行日志記錄( if(logger.isDebugEnabled() { log.debug(...) }
),它們是導致表演下降的常見陷阱。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.