天天看點

jersey2.x 解析json字元串

jersey2.x對json的支援有3種,MOXy、JSON-P、Jackson。本文采用的是Jackson實作json字元串的解析與傳回。

首先,在pom.xml中添加Jackson的依賴:

<!-- https://mvnrepository.com/artifact/org.glassfish.jersey.media/jersey-media-json-jackson -->
<dependency>
    <groupId>org.glassfish.jersey.media</groupId>
    <artifactId>jersey-media-json-jackson</artifactId>
    <version>2.25.1</version>
</dependency>
           

假如,我們定義一個實體類User

package com.Model;

import java.io.Serializable;


public class User implements Serializable {

	public String username;
	
	public String getUsername(){
		return this.username;
	}
	
	public void setUsername(String username){
		this.username = username;
	}
}
           

Jersey 服務的實作如下:

@Path("/UserInfoService")
public class computation {

	 @POST
	 @Consumes(MediaType.APPLICATION_JSON)
	 @Produces(MediaType.APPLICATION_JSON)
	 public User userAge(User user) {
	  User user1 = new User();
	  System.out.println(user.getUsername());
	  user1.setUsername(user.getUsername());
	  return user1;
	 }
}
           

然後,利用advanced rest client進行測試,請求的位址為:http://localhost:8080/simple-service-webapp/webapi/UserInfoService,發送json格式的資料{"username":"admin"}

jersey2.x 解析json字元串

jersey解析json字元串時,它會将接收到的json字元串,直接注入到相應的對象(該對象中必須含有請求字元串中的相應字段)中。想要傳回json時,隻需傳回包含相應字段的對象即可,Jersey會自動将其轉換為json字元串形式。

繼續閱讀