Как преобразовать объект ResultSet в один конкретный объект класса POJO?

  1. Например, у меня есть Resultset, который содержит сведения о сотруднике, и у меня есть таблица для сотрудника в базе данных, и я выбираю все детали из этого

  2. У меня есть Java POJO класс, который похож на Employee Table, что является лучшим методом для реализации преобразования результатов в объект класса Employee

  3. Каков наилучший способ реализации, если у меня есть несколько классов, таких как Employee и несколько таблиц, как написать код для повторного использования.

Я использую следующие обозначения сейчас.

public Employee{

    private int empId;

    public setEmpId(int empId){
        this.empId = empId;
    }

    public int getEmpId(){
        return this.empId;
    }
}

public class SetResultSetToEmployee{

    public Employee getEmployee(){
        Employee e = new Employee();
        e.setEmpId(resultSet.getInt("EmpId"));
        return e;
    }
}

3 ответа

Mybatis, или ORM, как Hibernate, может быть вашим лучшим решением.
Но, если вам действительно нужно использовать ResultSet от jdbc и вы хотите преобразовать ResultSet в Java Beans, вы можете проверить:

  1. ResultSetDynaClass of BeanUtils из apache.
  2. или напишите немного кода сами, как это.

У меня есть Java POJO класс, который похож на Employee Table, что является лучшим методом для реализации преобразования результатов в объект класса Employee

  • Если вы знаете о JPA, тогда это будет лучшая ставка. Вам не нужно будет выполнять тип-трансляцию, чтобы получить объект POJO. JPA работает над ORM (Object Relational Mapping). Это непосредственно Карты вашего POJO объект в таблицу базы данных.. И когда вы можете напрямую получить свой объект из базы данных..

  • И если у вас нет другого выбора, кроме как использовать JDBCтогда у вас нет другого выбора, кроме TypeCasting,

Каков наилучший способ реализации, если у меня есть несколько классов, таких как Employee и несколько таблиц, как написать код для повторного использования.

  • В случае JDBC, я не знаю, какой тип повторного использования вы ищете, но вы можете реализовать DB класс, и есть все вашиQuery Templates там.. Для любого запроса, который вы хотите выполнить, вы можете использовать этот класс. Это будет сравнительно лучше, чем иметь отдельные запросы, разбросанные по всему вашему приложению..

  • Опять же, если вы можете использовать JPA, есть концепция Entities.. Если вы хотите работать с несколькими выборками, обновлять или вставлять с базой данных, вам будет легче.. Вы можете просто получить соответствующий объект и выгрузить его в экземпляр вашего Entityили сбросьте ваш объект в базу данных, не беспокоясь о Queries,

Для начала JPA, вы можете начать с любой из этих ссылок: -

Если вы действительно хотите писать повторно используемые коды, используйте инструменты ORM, такие как http://www.hibernate.org/.

Другие вопросы по тегам