XML и JSON (6) --- JSON

1. Введение

        Нотация объектов JavaScript Нотация объектов JS — это облегченный формат обмена данными.

2. Формат объекта

        Объект, обозначенный фигурной скобкой:

                Свойства объекта описываются в скобках, а свойства объекта описываются парами ключ-значение.

                Формат:

                        Двоеточие используется для связи ключей и значений, а запятые используются для разделения нескольких пар ключ-значение;

                        Ключ пары ключ-значение должен быть заключен в кавычки (обычно при разборе Java, если ключ не использует кавычки, будет сообщено об ошибке, но JS может правильно его разобрать);

                        Значение пары ключ-значение может быть любым типом данных в JS.

        Пример: книга

                Заголовок книги

                Введение

Джава:

class Book{
    private String name;
    private String info;
    get/set....
}
Book b = new Book();
b.setName = "xxx";
b.setInfo = "yyy";
...

js:

var b = new Book();
b.name = "xxx";
b.info = "yyy";

XML:

<book>
    <name>xxx</name>
    <info>yyy</info>
</book>

JSON:

{
    "name":"xxx",
    "info":"yyy"
}

Формат массива:

        Объекты могут быть вложены друг в друга в формате JSON: [элемент 1, элемент 2...]

Например:

{
    "friend":["x","y","z",{
                "name":"aaa",
                "age":18
            }]
}

Используйте xstream:

package com.java.h.demo;

import com.thoughtworks.xstream.XStream;

import java.util.Objects;

/**
 * @author s
 * @version 1.0
 * @date 2022-02-19 13:59
 */
public class Demo5 {
    public static void main(String[] args) {
        Person p = new Person();
        p.setName("张三");
        p.setAge(18);
        // XStream使用
        // 1.创建XStream对象
        XStream x = new XStream();
        // 2.修改某个类型生成的节点(可选,默认包名.类名)
        x.alias("person",Person.class);
        // 3.传入对象,开始生成
        String xml = x.toXML(p);
        System.out.println(xml);
    }
    static class Person{
        private String name;
        private int age;

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public int getAge() {
            return age;
        }

        public void setAge(int age) {
            this.age = age;
        }

        public Person() {
        }

        @Override
        public boolean equals(Object o) {
            if (this == o) return true;
            if (o == null || getClass() != o.getClass()) return false;
            Person person = (Person) o;
            return age == person.age && Objects.equals(name, person.name);
        }

        @Override
        public int hashCode() {
            return Objects.hash(name, age);
        }
    }
}

 

Дорога длинная и длинная, я буду искать вдоль и поперек!

Supongo que te gusta

Origin blog.csdn.net/weixin_38817361/article/details/123022074
Recomendado
Clasificación