【发布时间】:2013-03-14 10:59:53
【问题描述】:
我有一个 ArrayList 类型为 empDetail(一个 POJO 类)。
List<EmpDetail> empDetailList = new ArrayList<EmpDetail>();
这个列表代表数据库中的一个表。 我需要下拉列表的值,所以我这样做了
<s:select list="empDetailList" listKey="country" listValue="country" name="country"></s:select>
通过这个,我从数据库中获得了国家列的所有行,这很好。但我需要这个下拉列表中的唯一国家/地区。
我知道我可以编写一个 SQL 查询来获得不同的国家,但是在这种情况下如何做到这一点。
更新 1: 你们中的任何人都有 Hibernate 解决方案吗?
更新 2: 我的POJO类如下...
package bean;
import java.io.Serializable;
import java.sql.Date;
public class EmpDetail implements Serializable{
private static final long serialVersionUID = 1L;
private Long id;
private String name;
private int age;
private String address;
private String city;
private String section;
private String country;
private String classStudying;
private String fatherName;
private String motherNmae;
private Date DOJ;
private String certificates;
private Date CompletedDate;
private String crossCheckedBy;
private Date crossCheckedDate;
private String comments;
//and its getters and setters...
}
【问题讨论】:
-
你如何填充你的列表?
-
@AleksandrM 我已经在我的问题中展示了它。我使用
select * form empDetail获取所有列,然后将其存储在此arrayList 中。 -
原来是SQL查询。为什么不使用 distinct?
-
@AleksandrM 我需要所有列,并且我将拥有所有列的下拉列表。你给我的答复是我已经在关于 DISTINCT 的问题中提到了它。
-
为什么不编写单独的 SQL 查询来仅检索国家/地区列表?
标签: java hibernate struts2 hql