CyStack logo
  • Sản phẩm & Dịch vụ
  • Giải pháp
  • Bảng giá
  • Công ty
  • Tài liệu
Vi

vi

Mục lục

Trang chủBlogSpring REST API: Hướng dẫ...
Java

Spring REST API: Hướng dẫn hỗ trợ cả XML và JSON

3 phút đọc23/09/2025
CyStack Author
Chris Pham

Technical Writer

0 lượt xem
Reading Time: 3 minutes

Khi xây dựng REST API, JSON thường là định dạng mặc định. Nhưng trong trường hợp một client yêu cầu định dạng XML thì sao? Bài viết này sẽ hướng dẫn bạn cách cấu hình Spring REST API để trả về XML và JSON theo yêu cầu của client.

Spring REST API

Hỗ trợ song song XML và JSON trong Spring REST API

Vì chúng ta sẽ chỉnh sửa dựa trên một project có sẵn, đầu tiên bạn cần tải nó về từ liên kết này.

Sau đây, ta sẽ thực hiện các thay đổi sau trong file cấu hình Spring bean.

  • Định nghĩa một bean có kiểu là Jaxb2RootElementHttpMessageConverter.


  • Thêm bean vừa được cấu hình ở trên vào thuộc tính messageConverters của RequestMappingHandlerAdapter.


	
		
		
	


Sau các thay đổi trên, file cấu hình Spring bean servlet-context.xml hoàn chỉnh của chúng ta sẽ có dạng như sau:




	
	
	
	

	
	

	
	
		
		
	
	
	
	
		
			
				
				
			
		
	
	
	
	
		
	
	
	
	
	
	

Chúng ta đã biết để hỗ trợ việc marshal (chuyển đổi một Java object thành XML) với JAXB cho một class, ta cần thêm annotation @XmlRootElement cho class đó. Vì vậy, hãy thêm annotation này vào model class trong Employee.java.

@XmlRootElement
public class Employee implements Serializable{

//no change in code
}

Ứng dụng Spring của chúng ta giờ đây sẽ hỗ trợ cả JSON lẫn XML. Nó thậm chí còn hỗ trợ request XML đi kèm response JSON và ngược lại.

Dưới đây là một vài hình minh họa cho kết quả thực tế. Lưu ý là bài này sử dụng ứng dụng Postman trong Chrome, nhưng bạn có thể dùng bất kỳ REST client nào để kiểm thử.

Response dạng XML: Cần đảm bảo truyền header Accept là “application/xml”.

Hỗ trợ cả XML và JSON với Spring

Response dạng JSON: Cần đảm bảo truyền header Accept là “application/json”.

Hỗ trợ cả XML và JSON với Spring

Request XML với Response JSON: Cần đảm bảo header Accept là “application/json” và header Content-Type là “text/xml” như trong các hình dưới đây.

Hỗ trợ cả XML và JSON với Spring

Hỗ trợ cả XML và JSON với Spring

Tổng kết

Như vậy, chỉ với vài thay đổi nhỏ trong cấu hình và một annotation, ứng dụng Spring REST của bạn đã có thể linh hoạt phục vụ cả định dạng XML lẫn JSON. Điều này một lần nữa cho thấy sức mạnh và sự tiện lợi của Spring Framework trong việc xây dựng các web API hiện đại để đáp ứng tốt hơn các yêu cầu đa dạng từ phía client.

Về tác giả

Chris Pham
Chris PhamTechnical Writer

I have over 5 years of experience writing technical documentation for tech products, making them accessible and user-friendly. My focus is always on providing clear and precise information. @#@ Tôi đã có hơn 5 năm kinh nghiệm viết tài liệu kỹ thuật cho các sản phẩm công nghệ, giúp người dùng dễ dàng tiếp cận và sử dụng. Tôi luôn tập trung vào việc cung cấp thông tin chính xác và dễ hiểu.

Cập nhật thông tin mới nhấtNhận các thông tin mới nhất về mối đe dọa, báo cáo an ninh mạng từ CyStack về hòm thư điện tử của bạn

Thảo luận (0)

Đăng nhập để thảo luận

Bài viết liên quan