下面是jdbc实现宠物商店管理系统的完整攻略:
1. 准备工作
在开始之前,需要先做好下面这些准备工作:
- 安装并配置好Java开发环境
- 安装并配置好MySQL数据库
- 下载并导入jdbc驱动包
2. 数据库设计
宠物商店管理系统需要管理宠物、客户和订单等信息,因此需要设计对应的数据库结构。这里简单介绍一下三个关键表的设计:
2.1. pet表
pet表包含了宠物的信息,如宠物ID、名称、种类、价格等。下面是建表语句示例:
CREATE TABLE `pet` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
`type` varchar(50) NOT NULL,
`price` decimal(10,2) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
2.2. customer表
customer表包含了客户的信息,如客户ID、姓名、电话等。下面是建表语句示例:
CREATE TABLE `customer` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) NOT NULL,
`phone` varchar(20) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
2.3. order表
order表是宠物商店管理的核心表,包含了订单的信息,如订单ID、客户ID、宠物ID、订单时间等。下面是建表语句示例:
CREATE TABLE `order` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`customer_id` int(11) NOT NULL,
`pet_id` int(11) NOT NULL,
`order_time` datetime NOT NULL,
PRIMARY KEY (`id`),
KEY `customer_id` (`customer_id`),
KEY `pet_id` (`pet_id`),
CONSTRAINT `order_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `order_ibfk_2` FOREIGN KEY (`pet_id`) REFERENCES `pet` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
3. JDBC连接MySQL数据库
在Java代码中使用jdbc连接MySQL数据库,可以参考下面的示例:
import java.sql.*;
public class JdbcDemo {
public static void main(String[] args) {
// JDBC连接参数
String url = "jdbc:mysql://localhost:3306/mydb?characterEncoding=utf8";
String username = "root";
String password = "123456";
// 加载驱动
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
System.out.println("找不到MySQL驱动");
return;
}
// 连接数据库
Connection conn = null;
try {
conn = DriverManager.getConnection(url, username, password);
System.out.println("连接MySQL数据库成功");
} catch (SQLException e) {
System.out.println("连接MySQL数据库失败:" + e.getMessage());
}
// 关闭数据库连接
try {
if (conn != null) {
conn.close();
System.out.println("关闭MySQL数据库连接");
}
} catch (SQLException e) {
System.out.println("关闭MySQL数据库连接失败:" + e.getMessage());
}
}
}
这段代码中,使用了JDBC的标准接口,通过加载com.mysql.jdbc.Driver驱动程序实现对MySQL数据库的访问。
4. 编写Java代码
在连接MySQL数据库成功之后,就可以开始编写Java代码,实现宠物商店管理系统。下面以查询pet列表为例,介绍一下Java代码的实现方法:
import java.sql.*;
public class PetManager {
public static void main(String[] args) {
// JDBC连接参数
String url = "jdbc:mysql://localhost:3306/mydb?characterEncoding=utf8";
String username = "root";
String password = "123456";
// 查询pet列表
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
conn = DriverManager.getConnection(url, username, password);
String sql = "SELECT * FROM pet";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
String type = rs.getString("type");
double price = rs.getDouble("price");
System.out.println(id + "\t" + name + "\t" + type + "\t" + price);
}
} catch (SQLException e) {
System.out.println("执行SQL查询失败:" + e.getMessage());
} finally {
// 释放资源
try {
if (rs != null) {
rs.close();
}
if (pstmt != null) {
pstmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
System.out.println("关闭数据库资源失败:" + e.getMessage());
}
}
}
}
这段代码中,使用了PreparedStatement对象执行SQL查询,将查询结果保存在ResultSet对象中,并通过循环遍历ResultSet对象打印出来。
5. 总结
综上所述,实现宠物商店管理系统的步骤包括了准备工作、数据库设计、使用JDBC连接MySQL数据库以及编写Java代码等环节。在实际开发过程中,需要注意SQL注入等安全问题,并根据实际需求设计更加完善的数据库结构和业务逻辑。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jdbc实现宠物商店管理系统 - Python技术站