枚举值封装:

http://blog.csdn.net/hanjun0612/article/details/72845960

一  基本类型

这里接着说前台调用枚举值。

首先,controller层

读取对应的状态1,放入modelmap

@Controller
@RequestMapping("test")
public class TestController extends TestBaseController { @RequestMapping(value = "test1.do")
public ModelAndView test1(HttpServletRequest request, HttpServletResponse response, ModelMap mode) throws Exception {
mode.addAttribute("item", 1);
return new ModelAndView("test/test");
} }

前台显示:

<%@ page import="com.sanju.sanjuSCM.utils.EnumHelper" %>
<%@ page import="com.sanju.sanjuSCM.model.EnumList.EnumList" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<%=EnumHelper.getEnumItem(EnumList.IsDeleteEnum.class, Integer.valueOf((Integer) request.getAttribute("item"))).getItemCN()%>
<%=EnumHelper.getEnumItem(EnumList.IsDeleteEnum.class, Integer.valueOf((Integer) request.getAttribute("item"))).getItemEN()%>
</body>
</html>

至此,我们也了解了。其实

mode.addAttribute("item", 1);

只是将数据放入了request.getAttribute("item")中。

前台可以通过这个方法获取到,并且通过前一篇  http://blog.csdn.net/hanjun0612/article/details/72845960  的枚举操作方法,来转换对应的中英文

二  泛型集合


Controller:

@Controller
@RequestMapping("test")
public class TestController extends TestBaseController { @RequestMapping(value = "test1.do")
public ModelAndView test1(HttpServletRequest request, HttpServletResponse response, ModelMap mode) throws Exception {
List<SysUser> list=new ArrayList<SysUser>();
SysUser u1=new SysUser();
u1.setAccount("a");
u1.setUsernamecn("Testa");
u1.setIslock(1);
list.add(u1); SysUser u2=new SysUser();
u2.setAccount("b");
u2.setUsernamecn("Testb");
u2.setIslock(0);
list.add(u2);
mode.addAttribute("list", list);
return new ModelAndView("test/test");
} }

JSP:


1 使用:<%%>解决

<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr class="tr1">
<th>账号</th>
<th>姓名</th>
<th>状态</th>
</tr>
<%
for(SysUser v:(List<SysUser>)request.getAttribute("list")){
%>
<tr>
<td><%=v.getAccount()%></td>
<td><%=v.getUsernamecn()%></td>
<td><%=EnumHelper.getEnumItem(EnumList.IsDeleteEnum.class, v.getIslock()).getItemCN()%></td>
</tr>
<%
}
%> </table>

2 使用 : EL表达式

<%int i=0;%>
<c:forEach items="${list}" var="item">
<tr class="tr1">
<td>${item.account}</td>
<td>${item.usernamecn}</td>
<td><%=EnumHelper.getEnumItem(EnumList.IsDeleteEnum.class, ((List<SysUser>)request.getAttribute("list")).get(i).getIslock()).getItemCN()%></td>
</tr>
<%i++;%>
</c:forEach>

java 前台使用枚举方法(一)的更多相关文章

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

    最近发现,前台jsp使用枚举,有一个更方便的方法. 首先 枚举类的封装大家看一下:http://blog.csdn.net/hanjun0612/article/details/72845960 然后 ...

  2. Java 基础之-枚举

      目录(?)[-] 用法一常量 用法二switch 用法三向枚举中添加新方法 用法四覆盖枚举的方法 用法五实现接口 用法六使用接口组织枚举 用法七关于枚举集合的使用   DK1.5引入了新的类型-- ...

  3. 说说Java中的枚举(一)

    在实际编程中,往往存在着这样的“数据集”,它们的数值在程序中是稳定的,而且“数据集”中的元素是有限的.例如星期一到星期日七个数据元素组成了一周的“数据集”,春夏秋冬四个数据元素组成了四季的“数据集”. ...

  4. java之enum枚举(2015年05月28日)

    背景: 今天启动了一个新的项目,由于要从之前的旧项目中拿过来一些代码,所以就看了下公司之前项目代码,发现有定义的常量类,也有枚举类,然后就在想着两者的功能差不多,那他们之间到底有什么区别呢,所以就决定 ...

  5. 【转】Java基础笔记 – 枚举类型的使用介绍和静态导入--不错

    原文网址:http://www.itzhai.com/java-based-notes-introduction-and-use-of-an-enumeration-type-static-impor ...

  6. Java中的枚举类型详解

    枚举类型介绍 枚举类型(Enumerated Type) 很早就出现在编程语言中,它被用来将一组类似的值包含到一种类型当中.而这种枚举类型的名称则会被定义成独一无二的类型描述符,在这一点上和常量的定义 ...

  7. 黑马程序员:Java基础总结----枚举

    黑马程序员:Java基础总结 枚举   ASP.Net+Android+IO开发 . .Net培训 .期待与您交流! 枚举 为什么要有枚举 问题:要定义星期几或性别的变量,该怎么定义?假设用1-7分别 ...

  8. Java中的枚举的治理

    版权声明:本文为博主原创文章,转载请注明出处,欢迎使劲喷 一.为啥用枚举&为啥要对枚举进行治理 1.先来说说为啥用枚举 表中某个字段标识了这条记录的状态,我们往往使用一些code值来标识,例如 ...

  9. 如何在Java中避免equals方法的隐藏陷阱

    摘要 本文描述重载equals方法的技术,这种技术即使是具现类的子类增加了字段也能保证equal语义的正确性. 在<Effective Java>的第8项中,Josh Bloch描述了当继 ...

随机推荐

  1. WPF EventTrigger,BeginStoryboard

    <Window x:Class="WpfApplication2.LoginWind" xmlns="http://schemas.microsoft.com/wi ...

  2. 20155227《网络对抗》Exp7 网络欺诈防范

    20155227<网络对抗>Exp7 网络欺诈防范 实践内容(3.5分) 本实践的目标理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法.具体实践有 (1)简单应用SET工具建 ...

  3. 一、InnoDB引擎

    一.InnoDB的历史 MYSQL的5.1版本的时候还是使用旧的innoDB,当时orale公司推出的新的innoDB引擎, 但是需要以插件的形式编译,叫innoDB plugin : 知道MYSQL ...

  4. EZ 2018 05 13 NOIP2018 模拟赛(十三)

    这次的比赛真心水,考时估分240,然后各种悠闲乱逛 然后测完T1数组开小了炸成40,T2,T3都没开long long,T2炸成20,T3爆0 掉回1600+的深渊,但是还有CJJ dalao比我更惨 ...

  5. Linux rhel7 无线网络配置

    前言: 手提新装rhel7, ifconfig 发现只有lo 怎么办? 1. 检查网卡驱动装了没有: nmcli -a|grep wlp\ 如果没安装: a. lspci|grep Wireless ...

  6. CS50.3

    1,int()取整函数 2,RPG(role playing game )角色扮演游戏 3,代码写了,要跑,需要compiler (编译器) 4,CLI(command-line interface) ...

  7. tree的使用,显示行号,find命令应用

    第1章 linux启动过程 1.开机自检bios 2.mbr引导 3.GRUB 菜单:选择不同的内核 4.加载内核 5.运行init进程 6.读取/etc/inittab运行级别配置文件 7.执行 / ...

  8. Python魔术世界 1 如何使用Visual Studio在WIN10中一键安装Python3入门编程环境并测试Django

    本文通过VS安装Python和Django的环境,创建了一个Web程序,前后5分钟的操作,让你快速入门Python的编程世界,各种Python和Django的概念会在实战中给你娓娓道来. Django ...

  9. Linux shell (6)

    1.linux shell函数: 将一组命令集或语句形成一个可用的块,这些语句块成为函数. 2.shell 函数的组成:  函数名:函数的名字,注意一个脚本中函数名要唯一,否则会引起调用函数紊乱  函 ...

  10. leetcode-递增的三元子序列

    给定一个未排序的数组,判断这个数组中是否存在长度为 3 的递增子序列. 数学表达式如下: 如果存在这样的 i, j, k,  且满足 0 ≤ i < j < k ≤ n-1,使得 arr[ ...