1. 程式人生 > 其它 >Java中json的序列化反序列化

Java中json的序列化反序列化

技術標籤:程式碼

目前Java常用的Json類庫有3種,即fastjson、jackson,還有gson。這裡列出fastjson和jackson兩種方法

匯入依賴
		<!-- fastjson -->
		<dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>fastjson</artifactId>
			<version>1.2.54</version>
		</dependency>

		<!-- jackson --
> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <
/dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-annotations</artifactId> </dependency>
實體類
public class User {
	private int id;
	private String name;
	private String password;
	public User() {
		super();
	}
}
主方法
public class TestJson {
	public static void main(String[] args) throws Exception {
		User user = new User(1,"張三","123456");
		
		System.out.println("-----fastjson-----");
		// 將Java物件轉換為json字串
		String objectToFastjson = JSON.toJSONString(user);
		System.out.println(objectToFastjson);
		// 將json反序列化為Java物件
		User user1 = JSON.parseObject(objectToFastjson,User.class);
		System.out.println(user1);
		
		System.out.println("-----jackson-----");
		ObjectMapper objectMapper = new ObjectMapper();
		// 將Java物件轉換為json字串
		String objectToJackson = objectMapper.writeValueAsString(user);
		System.out.println(objectToJackson);
		// 將json反序列化為Java物件
		User user2 = objectMapper.readValue(objectToJackson, User.class);
		System.out.println(user2);
	}
}
測試結果

在這裡插入圖片描述