酒店管理系统java,mysql实现
时间: 2023-07-11 20:58:30 浏览: 206
酒店管理系统是一个复杂的系统,包含了多个模块,如前台管理、客房管理、餐饮管理、财务管理等。下面我将简单介绍如何使用Java和MySQL实现酒店管理系统的前台管理模块。
1. 数据库设计
酒店管理系统的数据库设计需要考虑到系统的完整性和性能等方面。以下是一个简单的数据库设计:
- hotel:酒店信息表,包含酒店名称、地址、电话等字段。
- room:客房信息表,包含客房编号、客房类型、价格等字段。
- customer:客户信息表,包含客户姓名、性别、联系电话等字段。
- order:订单信息表,包含订单编号、客房编号、客户编号、入住时间、离店时间等字段。
2. Java代码实现
在Java中,我们可以使用JDBC连接MySQL数据库,并通过SQL语句实现数据的增删改查等操作。以下是一个简单的实现:
```java
import java.sql.*;
public class HotelManager {
private static final String DB_URL = "jdbc:mysql://localhost:3306/hotel";
private static final String DB_USER = "root";
private static final String DB_PASSWORD = "password";
private Connection conn = null;
private PreparedStatement pstmt = null;
private ResultSet rs = null;
// 连接数据库
public void connect() {
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
} catch (ClassNotFoundException e) {
System.out.println("Cannot find JDBC driver.");
} catch (SQLException e) {
System.out.println("Cannot connect to MySQL database.");
}
}
// 关闭数据库连接
public void close() {
try {
if (rs != null) {
rs.close();
}
if (pstmt != null) {
pstmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
System.out.println("Cannot close MySQL database connection.");
}
}
// 查询客房信息
public ResultSet queryRoom(String type) {
String sql = "SELECT * FROM room WHERE type = ?";
try {
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, type);
rs = pstmt.executeQuery();
return rs;
} catch (SQLException e) {
System.out.println("Cannot query room information from MySQL database.");
return null;
}
}
// 预订客房
public boolean bookRoom(int roomId, int customerId, String checkinDate, String checkoutDate) {
String sql = "INSERT INTO order (room_id, customer_id, checkin_date, checkout_date) VALUES (?, ?, ?, ?)";
try {
pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, roomId);
pstmt.setInt(2, customerId);
pstmt.setString(3, checkinDate);
pstmt.setString(4, checkoutDate);
int rows = pstmt.executeUpdate();
if (rows > 0) {
return true;
} else {
return false;
}
} catch (SQLException e) {
System.out.println("Cannot book room from MySQL database.");
return false;
}
}
// 取消预订
public boolean cancelBook(int orderId) {
String sql = "DELETE FROM order WHERE order_id = ?";
try {
pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, orderId);
int rows = pstmt.executeUpdate();
if (rows > 0) {
return true;
} else {
return false;
}
} catch (SQLException e) {
System.out.println("Cannot cancel book from MySQL database.");
return false;
}
}
}
```
以上是一个简单的酒店管理系统的Java实现,其中包括了连接数据库、查询客房信息、预订客房、取消预订等功能。你可以根据实际需求进行修改和完善。
阅读全文