日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

【XML】Java对象数据的XML和JSON表示

發(fā)布時間:2025/3/15 asp.net 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【XML】Java对象数据的XML和JSON表示 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

XML與JSON

本文主要是基于之前的一份Java代碼,根據(jù)合理數(shù)據(jù)(下面的鏈接中有),設計對應的XML格式和JSON格式的存儲表示,并使用工具對其合法性加以驗證。

JavaCode

先看Java的代碼,完整版在這里 → 完整版

下面是這里會用到的的部分類:

public class Product {private String code;private String description;private double price;public Product(String code, String description, double price) {this.code = code;this.description = description;this.price = price;}public String getCode() {return this.code;}public String getDescription() {return this.description;}public double getPrice() {return this.price;}@Overridepublic boolean equals(Object product) {return (product instanceof Product) && (this.getCode().equals(((Product)product).getCode()));}@Overridepublic String toString() {return this.getCode() + "," + this.getDescription() + "," + this.getPrice();}} public class OrderItem {private Product product;private int quantity;public OrderItem(Product product, int quantity) {this.product = product;this.quantity = quantity;}public Product getProduct() {return this.product;}public void setQuantity(int quantity) {this.quantity = quantity;}public int getQuantity() {return this.quantity;}public double getValue() {return this.getProduct().getPrice() * this.getQuantity();}@Overridepublic String toString() {return this.getQuantity() + "," + this.getProduct().getCode() + "," + this.getProduct().getPrice();}} import java.util.ArrayList;public class Order {private ArrayList<OrderItem> orderItemList = new ArrayList<>();public void addOrderItem(OrderItem orderItem) {this.orderItemList.add(orderItem);}public void removeOrderItem(OrderItem orderItem) {this.orderItemList.remove(orderItem);}public ArrayList<OrderItem> getAllOrderItem(){return this.orderItemList;}public OrderItem getOrderItem(Product product) {for (OrderItem orderItem : orderItemList) {if (orderItem.getProduct().equals(product)) {return orderItem;}}return null;}public int getNumberOfOrderItems() {return this.orderItemList.size();}public double getValue() {double value = 0.0;for (OrderItem orderItem : orderItemList) {value += orderItem.getValue();}return value;}} import java.util.ArrayList;public class Sales {private ArrayList<Order> orders = new ArrayList<>();public void addOrder(Order order) {this.orders.add(order);}public ArrayList<Order> getAllOrder(){return this.orders;}public int getNumberOfOrders() {return this.orders.size();}}

使用XML格式存儲

可以將Sales對象的數(shù)據(jù)使用XML格式來存儲。

XML

<?xml version="1.0" encoding="UTF-8" ?> <SALES><ORDER><ORDERITEM><PRODUCT><CODE>A001</CODE><DESCRIPTION>Almond Flavored Syrup</DESCRIPTION><PRICE>9.0</PRICE></PRODUCT><QUANTITY>3</QUANTITY></ORDERITEM><ORDERITEM><PRODUCT><CODE>A002</CODE><DESCRIPTION>Irish Creme Flavored Syrup</DESCRIPTION><PRICE>9.0</PRICE></PRODUCT><QUANTITY>5</QUANTITY></ORDERITEM></ORDER><ORDER><ORDERITEM><PRODUCT><CODE>A001</CODE><DESCRIPTION>Almond Flavored Syrup</DESCRIPTION><PRICE>9.0</PRICE></PRODUCT><QUANTITY>1</QUANTITY></ORDERITEM><ORDERITEM><PRODUCT><CODE>A004</CODE><DESCRIPTION>Caramel Flavored Syrup</DESCRIPTION><PRICE>9.0</PRICE></PRODUCT><QUANTITY>2</QUANTITY></ORDERITEM><ORDERITEM><PRODUCT><CODE>A006</CODE><DESCRIPTION>Gourmet Coffee Travel Thermo</DESCRIPTION><PRICE>18.0</PRICE></PRODUCT><QUANTITY>3</QUANTITY></ORDERITEM></ORDER><ORDER><ORDERITEM><PRODUCT><CODE>A009</CODE><DESCRIPTION>Gourmet Coffee 36 Cup Filters</DESCRIPTION><PRICE>45.0</PRICE></PRODUCT><QUANTITY>100</QUANTITY></ORDERITEM></ORDER> </SALES>

瀏覽器解析XML

XML解析錯誤

如果我們刪去最后一行的<\SALES>,就會解析錯誤:

使用JSON格式存儲

同樣的數(shù)據(jù),也可以使用JSON格式來存儲。

JSON

[[{"product":{"code":"A001","description":"Almond Flavored Syrup","price":"9.0"},"quantity":"3"},{"product":{"code":"A002","description":"Irish Creme Flavored Syrup","price":"9.0"},"quantity":"5"}],[{"product":{"code":"A001","description":"Almond Flavored Syrup","price":"9.0"},"quantity":"1"},{"product":{"code":"A004","description":"Caramel Flavored Syrup","price":"9.0"},"quantity":"2"},{"product":{"code":"A006","description":"Gourmet Coffee Travel Thermo","price":"18.0"},"quantity":"3"}],[{"product":{"code":"A009","description":"Gourmet Coffee 36 Cup Filters","price":"45.0"},"quantity":"100"}] ]

JSLint驗證

總結

本文基于之前的一份Java代碼,在合理數(shù)據(jù)集的范圍內(nèi),編寫模擬數(shù)據(jù)的XML格式代碼和JSON格式代碼,并分別使用瀏覽器和JSLint,對其合法性加以驗證。

總結

以上是生活随笔為你收集整理的【XML】Java对象数据的XML和JSON表示的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。