将MySQL数据作为对象检索

时间:2015-07-28 10:20:24

标签: java mysql

我现在没有任何代码,但我正在考虑如何编写希望从MySQL中的同一行多次检索各种数据的代码。我想知道是否有一行代码允许我(在Java中)设置一个等于检索结果的对象,如...

ResultSet rs = ps.executeQuery();
tempObject = rs;

然后我可以使用getter方法返回该对象的各种属性。我当然会关闭结果集和准备好的声明。我只想要一些暂时保留其价值的东西作为某种信息存储。

2 个答案:

答案 0 :(得分:0)

您可以使用设计模式构建器,并通过应用getStringgetInt ...来填充模型属性,从resultSet构建对象(您的模型)

答案 1 :(得分:0)

根据我的理解,你有两个选择

首先是,使用Hibernate

public User getUserDetails(String userName,String passWord)
    {
        SessionFactory sf=HibernateUtil.getSessionFactory();
        Session session=sf.openSession();
        session.beginTransaction();


        User user=null;
        try{

            user=(User)session.createQuery("from User where userName='"+userName+"' and passWord='"+passWord+"'").list().get(0);



          }catch(Exception e)
          {

           return null; 
          }
        session.close();
        return user;
    }

注意:需要-Hibernate配置,并且对于小型项目可能过度。

其次是,

public Debit getAllDebits()
    {

        try{

            PreparedStatement ps=connection.prepareStatement(" select * from table_debit");
           ResultSet rs=ps.executeQuery();

           Debit debit=null;

           while(rs.next())
           {
              debit=new Debit();
              debit.setId(rs.getInt("id"));
              debit.setAmount(rs.getDouble("amount"));
              //bla
              //bla               
            }



        }catch(Exception e)
        {
             System.out.println("error in getAllDebits---------"+e);
        }
        return debit;
    }

注意: - 创建JDBC连接和Bean类