帮我写一个基于java web的添加图书和展示图书代码
时间: 2024-10-10 08:02:09 浏览: 20
在Java Web中创建一个基本的图书管理系统,我们需要使用Servlet和JSP结合MySQL数据库来实现。这里我会给出一个简单的例子,包括添加图书和展示图书的基本操作。首先,我们需要数据库表结构(假设图书表`books`有id, title, author, publication_date字段)。
**1. 创建数据库表(SQL):**
```sql
CREATE TABLE books (
id INT PRIMARY KEY AUTO_INCREMENT,
title VARCHAR(100) NOT NULL,
author VARCHAR(50),
publication_date DATE
);
```
**2. 添加图书(Servlet):BookAddServlet.java**
```java
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class BookAddServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String title = request.getParameter("title");
String author = request.getParameter("author");
// 假设你已经设置好数据库连接
String sql = "INSERT INTO books (title, author) VALUES (?, ?)";
// ...在这里插入数据
response.sendRedirect("/showBooks.jsp");
}
}
```
**3. 展示图书(JSP):ShowBooks.jsp**
```jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<%
List<Book> books = (List<Book>) session.getAttribute("books"); // 假设从数据库获取图书列表
%>
</head>
<body>
<table border="1">
<tr>
<th>ID</th>
<th>Title</th>
<th>Author</th>
</tr>
<% for (Book book : books) { %>
<tr>
<td><%= book.getId() %></td>
<td><%= book.getTitle() %></td>
<td><%= book.getAuthor() %></td>
</tr>
<% } %>
</table>
</body>
</html>
```
注意:这只是一个非常基础的示例,实际开发中需要处理更多的边界情况,如输入验证,错误处理,以及与数据库交互的安全措施(如使用预编译语句防止SQL注入)。此外,数据持久化通常由框架或ORM工具(如Hibernate或MyBatis)完成,而不是直接在Servlet里操作数据库。
阅读全文