上周在与第三方对接接口的时候,由于三方的接口key值均是采用下划线命名的方式,使用传统的JSONObject方式,需要挨个赋值,特别麻烦,而且一点也不面向对象,一点也不极客。
![f3c196413ffc662337dc4c6f412b160d.png](https://img-blog.csdnimg.cn/img_convert/f3c196413ffc662337dc4c6f412b160d.png)
![3b91076515bb7a7f188d854b9c11d56b.png](https://img-blog.csdnimg.cn/img_convert/3b91076515bb7a7f188d854b9c11d56b.png)
大概实现的效果就是上图这样,三方接口提供的无论是入参还是接参,均是下划线分隔的,接口的需求是驼峰的和下划线分隔的均需要能正常接收,并进行业务逻辑处理,好了,话不多说,上代码!
代码见:
jjn0942/jackson-demo-projectgitee.com![328e2db85a96b68e643ee7bf542d2786.png](https://img-blog.csdnimg.cn/img_convert/328e2db85a96b68e643ee7bf542d2786.png)
首先导入Pom依赖,Jackson的三个Jar包和FastJson(可不要,就是习惯了用而已):
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.12.0-rc1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-annotations -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.12.0-rc1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.12.0-rc1</version>
</dependency>
<!-- https://mvnrepository.com/