我做了一个从我的 MySQL 数据库中请求列的方法。幸运的是,这是可行的,但我正在尝试访问返回值。因为我想访问 Voedingsmiddel 的 getter 和 setter。在方法内部创建了一个新的 Voedingsmiddel,然后返回。数据库的值被分配为 voedingsmiddel 的属性。这个方法是在我的数据库类中创建的,我试图在另一个类中访问它。
如果我试图在方法之外访问 voedingsmiddel,它给了我一个对象,而不是给我数据位置 Voedingsmiddel@6f7fd0e6。
我能够得到一些我想要得到的结果。我通过将 public Voedingsmiddel getVoedingsmiddelBijId 更改为 public double getVoedingsmiddelBijId 来实现它。我还更改了返回 voedingsmiddel;进入voedingsmiddel.getCalorieen;所以我能够得到1个吸气剂。
通过调用方法 Database.getVoedingsmiddelBijId(int).getCalorieen(); Intellij 告诉我以下内容(“Voedingsmiddel.getCalorieen()”的结果被忽略)。
公共 Voedingsmiddel getVoedingsmiddelBijId(int idVoedingsmiddel){ Voedingsmiddel voedingsmiddel = new Voedingsmiddel("", 0, 0,0,0,0); 尝试 { 字符串查询 =“从 voedingsmiddel 中选择 * idVoedingsmiddel = ?”; PreparedStatementprepareStatement = myCon.prepareStatement(query); PreparedStatement.setInt(1, idVoedingsmiddel); myRes =preparedStatement.executeQuery(); 而(myRes.next()){ int idvoedingsmiddel = myRes.getInt("idVoedingsmiddel"); String naam = myRes.getString("naam"); int gram = myRes.getInt("gram"); 双卡路里= myRes.getDouble(“卡路里”); 双koolhydran = myRes.getDouble("koolhydran"); 双 eiwitten = myRes.getDouble("eiwitten"); 双 vetten = myRes.getDouble("vetten");voedingsmiddel = new Voedingsmiddel(naam, gram, calorieen, koolhydraten, eiwitten, vetten); System.out.println("idVoedingsmiddel " + idvoedingsmiddel + " naam " + naam + " gram " + gram + " calorieën " + calorieen + " koolhydraten " + koolhydraten + " eiwitten " + eiwitten + " vetten " + vetten); } } catch (Exception exc) { exc.printStackTrace(); System.out.println("Error: " + exc); } return voedingsmiddel; }
首先,如果有人可以解释我做错了什么,我将非常感激。此外,该问题的解决方案将更受欢迎!
预期的结果是该方法的返回值将是一个对象,而不是我认为的数据位置。所以我可以调用该对象的 getter 和 setter。
我有发布过多代码但信息不足的历史。所以我希望这会更好,如果不能随意纠正我。