Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将MySQL数据作为对象检索_Java_Mysql - Fatal编程技术网

Java 将MySQL数据作为对象检索

Java 将MySQL数据作为对象检索,java,mysql,Java,Mysql,我现在没有任何代码,但是坐在那里思考如何编写一些代码,希望多次从MySQL中的同一行检索各种数据。我想知道是否有一行代码允许我(在Java中)将一个对象设置为与检索到的结果相等,例如 ResultSet rs = ps.executeQuery(); tempObject = rs; 然后我可以使用getter方法返回该对象的各种属性。我当然会关闭resultset和prepared语句。我只是想要一些暂时保存其值的东西,作为某种信息存储 您可以使用设计模式生成器,通过应用getString或

我现在没有任何代码,但是坐在那里思考如何编写一些代码,希望多次从MySQL中的同一行检索各种数据。我想知道是否有一行代码允许我(在Java中)将一个对象设置为与检索到的结果相等,例如

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

然后我可以使用getter方法返回该对象的各种属性。我当然会关闭resultset和prepared语句。我只是想要一些暂时保存其值的东西,作为某种信息存储

您可以使用设计模式生成器,通过应用
getString
getInt
从结果集构建对象(您的模型)。。。根据我的理解,要填充模型属性,您有两种选择

第一个是,使用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类

您可以从结果集中获取值,并创建一个具有所需类成员的类的对象。我不明白为什么我得到了否决票。这里的人有时都很自以为是。你们知道aka JPA吗?你们想在你们的tempObject中存储什么样的数据?要从数据库中提取的某些特定值或任何数据?@SteveC jpa可能是一个杀伤力过大的小型应用程序,您应该使用
Debit Debit=new Debit()而不是
借方=空否则您将获得
NPE