jsp实现显示一个11行3列的表格
时间: 2024-09-29 18:04:13 浏览: 49
JSP(Java Server Pages)是一种动态网页技术,可以嵌入Java代码来生成HTML页面内容。为了在JSP中创建一个11行3列的表格,你可以使用HTML标签`<table>`、`<tr>`(代表行)以及`<td>`(代表单元格)。下面是一个简单的示例:
```jsp
<table border="1">
<!-- 表头 -->
<tr>
<th>列1</th>
<th>列2</th>
<th>列3</th>
</tr>
<!-- 数据行 -->
<% for (int i = 0; i < 11; i++) { %>
<tr>
<% for (int j = 0; j < 3; j++) { %>
<td>行<%= i + 1 %>,列<%= j + 1 %></td>
<% } %>
</tr>
<% } %>
</table>
```
在这个例子中,外部循环遍历11次(行),内部循环遍历3次(列),每次迭代都会生成一个新的单元格。`<% %>`是JSP表达式标签,用于插入动态生成的内容。
相关问题
创建一个JSP页面,包含一个10行5列的表格,用JSTL的迭代标签和EL表达式实现表格奇数行为红色,偶数行为白色。
以下是一个示例JSP页面,其中使用了JSTL的<c:forEach>迭代标签和EL表达式实现表格的行颜色交替显示:
```
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<title>Table Example</title>
</head>
<body>
<table border="1">
<c:forEach var="row" begin="1" end="10">
<tr style="background-color: ${row % 2 == 0 ? 'white' : 'red'};">
<c:forEach var="col" begin="1" end="5">
<td>Row ${row}, Column ${col}</td>
</c:forEach>
</tr>
</c:forEach>
</table>
</body>
</html>
```
在上面的代码中,我们使用<c:forEach>标签迭代10行,然后在每行中使用另一个<c:forEach>标签迭代5列。通过EL表达式`${row % 2 == 0 ? 'white' : 'red'}`来设置行的背景颜色,如果行数是偶数则为白色,否则为红色。
、使用纯JSP技术开发一个web应用,其使用login.jsp进行登录,登录错误则返回登录页面并实现错误回显;成功则跳到list.jsp,显示欢迎xxx登录并用表格显示一个商品列表(数据自行模拟,至少5行4列)。
为了实现这个功能,您需要遵循以下步骤:
1. 创建一个login.jsp页面,包含一个表单,请求方法为POST,表单中有用户名和密码两个文本框以及一个提交按钮。
2. 创建一个Servlet来处理登录请求,将请求和响应对象作为参数传递给Servlet,从请求对象中获取用户名和密码,然后验证它们是否正确。如果用户名或密码不正确,则将错误消息设置为请求属性,然后将请求转发回login.jsp页面。如果用户名和密码正确,则将用户名设置为会话属性,然后重定向到list.jsp页面。
3. 创建一个list.jsp页面,它将检查会话属性中是否有用户名,如果有则显示欢迎消息和商品列表。商品列表可以使用HTML表格来呈现,您可以将数据硬编码到JSP页面中,或者从数据库或其他数据源获取数据。
下面是一个简单的实现示例:
login.jsp:
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Login</title>
</head>
<body>
<h1>Login</h1>
<% if (request.getAttribute("error") != null) { %>
<p><font color="red"><%= request.getAttribute("error") %></font></p>
<% } %>
<form method="post" action="login">
<label>Username:</label><br/>
<input type="text" name="username"><br/>
<label>Password:</label><br/>
<input type="password" name="password"><br/><br/>
<input type="submit" value="Login">
</form>
</body>
</html>
```
LoginServlet.java:
```
@WebServlet("/login")
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
private static final String USERNAME = "admin";
private static final String PASSWORD = "password";
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("password");
if (USERNAME.equals(username) && PASSWORD.equals(password)) {
request.getSession().setAttribute("username", username);
response.sendRedirect("list.jsp");
} else {
request.setAttribute("error", "Invalid username or password");
request.getRequestDispatcher("login.jsp").forward(request, response);
}
}
}
```
list.jsp:
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>List</title>
</head>
<body>
<% if (session.getAttribute("username") != null) { %>
<h1>Welcome <%= session.getAttribute("username") %>!</h1>
<table border="1">
<tr>
<th>Product Name</th>
<th>Price</th>
<th>Quantity</th>
<th>Description</th>
</tr>
<tr>
<td>Product 1</td>
<td>$10.00</td>
<td>5</td>
<td>Description 1</td>
</tr>
<tr>
<td>Product 2</td>
<td>$20.00</td>
<td>3</td>
<td>Description 2</td>
</tr>
<tr>
<td>Product 3</td>
<td>$30.00</td>
<td>2</td>
<td>Description 3</td>
</tr>
<tr>
<td>Product 4</td>
<td>$40.00</td>
<td>1</td>
<td>Description 4</td>
</tr>
<tr>
<td>Product 5</td>
<td>$50.00</td>
<td>4</td>
<td>Description 5</td>
</tr>
</table>
<% } else { %>
<p>You must login first</p>
<a href="login.jsp">Login</a>
<% } %>
</body>
</html>
```
阅读全文