一、项目背景
随着旅游业的快速发展,酒店行业也日益繁荣。为了方便顾客预订客房,提高酒店的服务质量,开发一套客房预订系统变得尤为重要。本文将详细介绍如何使用JSP和MySQL实现一个简单的客房预订系统。

二、技术选型
1. 前端:HTML、CSS、JavaScript
2. 后端:Java、JSP、Servlet
3. 数据库:MySQL
三、系统功能
1. 客房查询:根据条件查询可预订的客房信息。
2. 客房预订:用户选择房间,填写预订信息,提交预订请求。
3. 预订列表:管理员查看所有预订信息,进行审核和修改。
4. 用户管理:管理员对用户进行管理,包括添加、删除和修改用户信息。
四、系统实现
1. 数据库设计
(1)创建数据库和数据表
```sql
CREATE DATABASE hotel;
USE hotel;
CREATE TABLE IF NOT EXISTS rooms (
id INT AUTO_INCREMENT PRIMARY KEY,
room_number VARCHAR(10) NOT NULL,
room_type VARCHAR(50) NOT NULL,
price DECIMAL(10, 2) NOT NULL,
available BOOLEAN NOT NULL DEFAULT TRUE
);
CREATE TABLE IF NOT EXISTS users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL,
password VARCHAR(50) NOT NULL,
role ENUM('admin', 'user') NOT NULL DEFAULT 'user'
);
CREATE TABLE IF NOT EXISTS reservations (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT NOT NULL,
room_id INT NOT NULL,
check_in DATE NOT NULL,
check_out DATE NOT NULL,
status ENUM('pending', 'approved', 'cancelled') NOT NULL DEFAULT 'pending',
FOREIGN KEY (user_id) REFERENCES users(id),
FOREIGN KEY (room_id) REFERENCES rooms(id)
);
```
(2)创建用户和管理员账户
```sql
INSERT INTO users (username, password, role) VALUES ('admin', 'admin123', 'admin');
INSERT INTO users (username, password, role) VALUES ('user1', 'user123', 'user');
```
2. 后端实现
(1)创建Servlet
```java
@WebServlet("








