java 前台使用枚举方法(二)

来源:互联网 发布:鹰潭三缺一麻将软件 编辑:程序博客网 时间:2024/05/28 09:32

最近发现,前台jsp使用枚举,有一个更方便的方法。


首先 枚举类的封装大家看一下:http://blog.csdn.net/hanjun0612/article/details/72845960


然后,我们创建一个class

package com.kintech.web.tag;import java.io.IOException;import javax.servlet.jsp.JspException;import javax.servlet.jsp.JspWriter;import javax.servlet.jsp.tagext.SimpleTagSupport;import com.kintech.common.utils.EnumHelper;@SuppressWarnings("all")public class EnumTag extends SimpleTagSupport {private Integer key;private Class cs;private String style = "0";//是否支持样式,0为否,1为是@Overridepublic void doTag() throws JspException, IOException {JspWriter out = getJspContext().getOut();String html = "";if ("1".equals(style)) {html = "<span class=' " + EnumHelper.getEnumItem(cs, key).getItemStyleClass() + "' >"+ EnumHelper.getEnumLangItem(cs, key) + "</span>";} else {html = "<span class='' >" + EnumHelper.getEnumLangItem(cs, key) + "</span>";}out.println(html);}public Integer getKey() {return key;}public void setKey(Integer key) {this.key = key;}public Class getCs() {return cs;}public void setCs(Class cs) {this.cs = cs;}public String getStyle() {return style;}public void setStyle(String style) {this.style = style;}}


最后前台只要这么用:

<c:forEach items="${pageResult.list }" var="item">                                <tr>                                    <td><enum:enumTag  style="1" key="${item.state}" cs="<%=EnumList.IsDeleteEnum.class %>" /></td>                                </tr>                            </c:forEach>

pageResult.list是action返回的模型集合。

item.state  是值。

EnumList.IsDeleteEnum.class  就是我们的枚举值了。


原创粉丝点击