select 取舍查询
有时候我们经常遇到数据库的值是0或1的数据,但是要用select表示出来的是用中文。我就遇到过这样的问题,现在解决了,分享给大家。
这是一个静态的常量类
public static final String ISRECOMMEND = "1"; //1:推荐,0:未推荐
public static final String DISRECOMMEND = "0";//1:推荐,0:未推荐
public static final String HZISRECOMMEND = "已推荐";
public static final String HZDISRECOMMEND = "未推荐";
public static HashMap<String, String> isRecommendmap = new HashMap<String, String>();
static{
isRecommendmap.put(ISRECOMMEND, HZISRECOMMEND);
isRecommendmap.put(DISRECOMMEND, HZDISRECOMMEND);
}
用静态块把键值存放在map里面
action**********
private String hzisrecommend=SystemParams.HZISRECOMMEND;
private String hzdisrecommend=SystemParams.HZDISRECOMMEND;
private String isRecommend;
在此省略get set 方法。。。
取map里面的值 这是通过一个display做的分页查询
SystemParams.isRecommendmap.get(hzisrecommend);
SystemParams.isRecommendmap.get(hzdisrecommend);
getRequest().setAttribute("map", SystemParams.isRecommendmap);
if (!StringUtils.isBlank(isRecommend)) {
isRecommend = URLEncoderHZ.decode(isRecommend);
pageRequest.getFilters().put("isRecommend", isRecommend);
}
jsp***********
<s:select cssClass="STYLE10" name="isRecommend" list="#request.map" listKey="key"
listValue="value" headerKey="" headerValue="请选择" ></s:select>