分享好友 最新动态首页 最新动态分类 切换频道
Java规则引擎开源项目 JBoss Rules Drools
2024-12-26 19:40


今天早上我花了一些时间来解决这个问题.一个有趣的用例.我想出了怎么做,但我不得不稍微改变你的json.这不是绝对必要的,但是类型转换不是您的问题的一部分,因此我们可以根据需要进行跟进:)

你的json:

我正在使用这两个文件来执行请求.请注意,我将eventType更改为String而不是数字.我稍后会指出这一点.

你的模型对象:

我正在使用JsonTypeInfo,这是这样做的:

逻辑类型名称,在您的情况下,它是属性“eventType”

表示外部属性用于反序列化上下文.您只能在属性上使用它,而不能在Params本身上使用类注释.这就是为什么我注释setter方法而不是接口类.

只需告诉jackson要使用的属性名称

然后在JsonSubTypes中我注释了可能的选项,在你的情况2中:

这告诉jackson在事件类型属性为“1”的情况下使用Param1.class

因此,对于PAram2.class和属性值为“2”相同

注意

这就是为什么我稍微改变了json.子类型注释不能将整数作为属性.现在您可以使用不同的选项,例如TypeConverters在运行时将您的整数属性转换为字符串,这样您就可以保持json相同.我跳过了这一步,快速谷歌会给你如何做到这一点的说明.

现在你的参数模型看起来像这样:

我正在对这些属性进行注释,因此杰克逊知道要对这些属性进行反序列化.

注意我有一个问题,因为有两个属性让我懒惰的眼睛看起来一样:

你不能使用现有的:D这需要花费十分钟才能搞清楚.有趣的事实,我上面有两行,并且一直在评论一个,没有理解为什么他们中的一个在另一个工作时抛出异常.

无论如何.

最后测试:

请注意,资源正在打印实例化类的名称.正如您所看到的,两个json已被反序列化为正确的实例类.

我希望有帮助:)

阿图尔

(有趣的事实#2:在我的回答中,我也使用了EXISTING而不是EXTERNAL,只是没有看到它.我可能需要让杰克逊为了我的理智而改变他们的名字)

编辑

我刚尝试过,杰克逊很聪明,可以为你转换你的json.因此,您可以按原样保留json,并将模型中的属性作为String(如图所示).一切正常.

但是为了完整性,如果你想要一个转换器(因为你可能需要将你的字符串模型转换回一个整数来进行serailisation),这将是一个整数到字符串的转换器:

你可以这样做:

最新文章
微信小程序API 获取小程序页面二维码
参数类型默认值说明sceneString最大32个可见字符,只支持数字,大小写英文以及部分特殊字符,其它字符需要自行编码处理(因不支持%,中文无法使用urlencode处理,请使用其他编码方式)pageString必须是已经发布的小程序页面,例如"pages/in
精选个性说说,2017年最新潮流短语
本文为你精选了最新的个性说说,涵盖了生活、情感、态度等多个方面。这些说说展现了现代人的独特个性和真实心声,语言简洁明了,充满个性魅力。它们反映了现代人的生活状态和价值观,同时也表达了对未来的期待和追求。这些个性说说充满了正
贝力菲热水器全国400服务热线《今日汇总》
1、排水管不通畅或排水泵堵转;2、电脑板坏;3、排水泵与电脑板接触不良或排水泵坏;4、查排水管是否弯折或高度过高,如不是,打开滤门,检查过滤器是否堵塞;5、若过滤器没有堵塞,检查排水管是否能排水;6、排水管不能滚筒上排水的洗衣机故
震惊!用AI一键生成完美美女写真,真的太简单了!
限时免费,点击体验最近超火的AI生图神器,坐拥3000美女的大男主就是你! https://ai.sohu.com/pc/generate/textToImg?_trans_=030001_yljdaimn 在这个科技不断进步的时代,我们已经不再满足于传统的照片编辑和生成。而如今,AI技术的发展
qq怎么邀人进群
QQ作为一款广受欢迎的即时通讯软件,不仅提供了便捷的聊天功能,还允许用户创建和管理群聊,方便多人之间的交流和互动。那么,如何在QQ中邀请好友加入群聊呢?以下是详细的步骤介绍。### 一、通过手机QQ邀请1. **登录QQ**:首先,确保你已
零基础轻松入门,主流网站搭建教程,打造专属个性化网站
本教程涵盖主流网站搭建方法,助您轻松入门,快速打造独具特色的个性化网站。从基础到进阶,涵盖域名注册、空间选择、网站设计等实用技巧,让您轻松掌握网站搭建全过程。挑选合适的网站搭建平台网站搭建实战教程其他平台搭建指南在互联网迅
苹果的芯片帝国
如果您希望可以时常见面,欢迎标星收藏哦~自研芯片,非常美妙的四个字,芯片代表着目前地球上集成度最高的科技实力,而自研往往意味着能够自己掌控芯片设计这一关键阶段,无数厂商为了自研芯片而前赴后继。而苹果,就是这无数厂商中的佼佼
上海SEO优化,企业在线崛起的强力助推器
上海SEO网络优化推广公司,凭借专业技术和丰富经验,帮助企业提升在线可见度,助力在线崛起。通过精准关键词布局、网站优化、内容营销等策略,提升企业品牌形象,吸引潜在客户,实现业绩增长。成为企业在线崛起的秘密武器。随着互联网的快
黄冈湖南站全链路优化推广,企业腾飞新动力引擎
黄冈湖南整站优化推广,为企业提供全面营销解决方案,助力企业实现线上飞跃,成为企业腾飞的新引擎。随着互联网的飞速发展,网络营销已经成为企业争夺市场份额的重要手段,在众多营销策略中,整站优化推广成为了许多企业提升品牌知名度、扩
Storyboarder AI
Storyboarder.ai是一款由专业电影制作人开发的AI辅助故事板制作工具。该工具旨在简化故事板创建流程,提高创意团队之间的沟通效率。通过利用先进的AI算法,Storyboarder.ai能够将简单的想法或现有剧本快速转化为专业的屏幕剧本、镜头列表和
相关文章
推荐文章
发表评论
0评