使用核心标签库制作一个简单的抽奖程序,具体要求如下:
使用 List 保存用户信息
使用随机方法
Book.java
public class Book {
private String name;
private int age;
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Book(int age,String name) {
super();
this.age = age;
this.name = name;
}
}
jsp代码
<%@page import="java.util.List"%>
<%@page import="java.sql.Array"%>
<!-- Java文件路径,Book为Java文件名称 -->
<%@page import="com.bygk.Book"%>
<%@page import="java.util.ArrayList"%>
<%@page import="java.util.Random"%>
<%@page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!-- JSP界面中使用JSTL核心标签库 -->
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>抽奖界面</title>
</head>
<body>
<%
Book b1 = new Book(11, "张三");
Book b2 = new Book(20, "李四");
Book b3 = new Book(30, "王五");
Book b4 = new Book(40, "赵四");
List<Book> list = new ArrayList<Book>();
list.add(b1);
list.add(b2);
list.add(b3);
list.add(b4);
request.setAttribute("list", list);
%>
<table border="1">
<tr>
<td>编号</td>
<td>姓名</td>
<!-- <td>年龄</td> -->
</tr>
<tr>
<!-- EL表达式${},获取{}中的指定对象参数、参数和对象的值 -->
<c:forEach items="${list }" var="b" varStatus="status">
<!-- 类似if语句设置背景颜色 -->
<c:if test="${status.index % 2 == 0 }">
<tr bgcolor="yellow">
</c:if>
<c:if test="${status.index % 2 == 1 }">
<tr bgcolor="cyan">
</c:if>
<td>${status.count}</td>
<td>${b.name}</td>
</c:forEach>
<tr>
<td bgcolor="red">中奖人</td>
<td bgcolor="red">
<!-- 随机生成1-4 --> <c:set var="sa"
value="<%=(int) (Math.floor(Math.random() * 4 + 1))%>" /> <!-- 类似Java的when方法 -->
<c:choose>
<c:when test="${sa == 1}">
张三
</c:when>
<c:when test="${sa == 2}">
李四
</c:when>
<c:when test="${sa == 3}">
王五
</c:when>
<c:when test="${sa == 4}">
赵四
</c:when>
</c:choose>
</td>
<tr>
<td><input style="width: 50px;" type="text"></td>
<td><form action="">
<input style="width: 50px;" type="submit" value="抽奖">
</form></td>
</tr>
</table>
</body>
</html>