Как преобразовать объект JAVA в таблицу HTML? - PullRequest
0 голосов
/ 28 января 2019

Мне нужен общий способ преобразования объекта Java в таблицу HTML, которая содержит переменные-члены этого объекта в качестве имени столбца и значение этого члена в качестве значения в таблице, например:

class Person {

    public String _name;
    public int _age;

    public Person(){
        this._name = "John Doe";
        this._age = 2;
    }
};

Если объект типа person, я хочу, чтобы вывод был примерно таким.

---------------------------
|    _name   | _age        |
---------------------------

|    John Doe | 2          |
---------------------------

Проблема в том, что у меня нет доступа к коду классов.

Есть ли универсальныйспособ реализовать функцию, которая может взять объект Java любого типа и напечатать переменную-член и ее значение?

Я думал об использовании toString(), но это не помогло, так как я не могу переопределить его вмой случай.

Если это класс

class Person {

    public String _name;
    public int _age;

    public Person(){
        this._name = "John Doe";
        this._age = 2;
    }
};

, то PrintobjectToHTML(); вывод должен быть

---------------------------
|    _name   | _age        |
---------------------------
|    John Doe |    2       |
---------------------------

1 Ответ

0 голосов
/ 28 января 2019

Вы можете сделать это, используя отражение.Вы можете использовать класс Class для этого (см. -> https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html).

Пример:

Person p = new Person();
Class cls = p.getClass();
Field[] fields = cls.getDeclaredFields();
// loop through fields
for (Field field: fields) {
  Object value = field.get(p);
  // print value as html
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...