1
  1. 例如,我有一个结果集,其中包含有关员工详细信息的详细信息,并且我在数据库中有一个员工表,我正在从中选择所有详细信息

  2. 我有类似于 Employee Table 的 java POJO 类什么是实现将结果集转换为 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;
    }
}
4

3 回答 3

4

Mybatis,或者像 Hibernate 这样的 ORM 可能是你最好的解决方案。
但是,如果你真的需要使用 jdbc 的 ResultSet,并且想将 ResultSet 转换为 java Beans,你可以检查:

  1. 来自 apache的BeanUtils的ResultSetDynaClass 。
  2. 或者,像这样自己编写一些代码。
于 2012-10-10T06:12:53.173 回答
1

我有类似于 Employee Table 的 java POJO 类什么是实现将结果集转换为 Employee 类对象的最佳方法

  • 如果您知道JPA,那将是最好的选择。您无需进行类型转换即可获取您的 POJO 对象。JPA 适用于 ORM(对象关系映射)。它直接将您的对象映射POJO到数据库表..当您可以直接从数据库中获取您的对象时..

  • 如果你除了使用别无选择JDBC,那么你别无选择TypeCasting

如果我有多个像 Employee 这样的类和多个表,那么最好的实现方法是什么?如何编写可重用的代码。

  • 在 JDBC 的情况下,我不知道您在寻找什么样的可重用性,但是您可以实现一个DB类,并拥有所有的 Query Templates东西。对于您想要执行的任何查询,您可以使用该类。与分散在您的应用程序中的离散查询相比,这相对更好。

  • 同样,如果您可以使用 JPA,则有一个 .. 的概念Entities。如果您想使用数据库进行多次获取、更新或插入,这对您来说会更容易.. 您可以获取适当的对象并将其转储到您的Entity,或将您的对象转储到您的数据库中,而不用担心任何类型的Queries.

对于 JPA,您可以从以下任何链接开始:-

于 2012-10-10T05:45:11.947 回答
0

如果您真的想编写可重用的代码,请使用 ORM 工具,例如http://www.hibernate.org/之类的 ORM 工具。

于 2012-10-10T05:50:14.593 回答