【问题标题】:how the list elements will be stored in java列表元素如何存储在java中
【发布时间】:2013-06-07 11:05:33
【问题描述】:

下面是我的代码(postgresql、java、hibernate)

String squery="select starttime,reachtime from train where loc='hyderabad' ";
list=session.createSQLQuery(squery).list();
for(int i=0;i<list.size();i++)
{
    System.out.println("list has"+list.get(i));
}

列表元素开始时间,到达时间将如何存储。在哪些位置?请帮助我

【问题讨论】:

  • 你是如何填充列表的?
  • 能否请您提供相关代码如何检索数据并将其存储在List中?

标签: java hibernate list postgresql


【解决方案1】:

I tried with list.get(i) for displaying but getting some unexpected symbols like @345J234.

这是因为您正在打印对象本身,这是默认的toString() 方法。如果您覆盖 toString() 您可以在直接调用对象时获得所需的任何消息。我认为您想要实现的是list.get(i).getName(),其中getName() 是您类中的一个方法

【讨论】:

  • 如何遍历列表以分别获取开始时间和到达时间。你能帮帮我吗..
  • 我无法直接回答您,因为我不知道您的 SQL API。
【解决方案2】:

你在为你的 DAO 类使用@Entity、@Table 注释吗?如果是,则继续。

假设您的 'Train' 表使用 @Table(name="TRAIN") 注释映射到名为 Train 的 POJO 类并假设您使用 @Column 映射了相关列,您可以执行以下操作:

Iterator trainIter=sess.createQuery("<your query>").iterate();
while ( trainIter.hasNext() ) {
    Train currentTrain = (Train) iter.next();  // fetch the object
    System.out.println("Train name is :"+currentTrain.getName());
    System.out.println("Train start time is :"+currentTrain.getStartTime());
    System.out.println("Train stop time is :"+currentTrain.getStopTime());
}

【讨论】:

  • 谢谢。这很有帮助。我想遍历列表以分别获取所有记录的开始时间和到达时间。我该如何实现。请帮助我。
  • 我在您编辑代码之前以及在我看到您正在使用休眠之前回复了。因此,我的答案大修。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-06-08
  • 1970-01-01
  • 2020-12-13
  • 2022-11-04
  • 1970-01-01
  • 1970-01-01
  • 2018-08-15
相关资源
最近更新 更多