一、实验目的
1 掌握使用 JDBC 操作mysql 数据库
2 熟悉图形界面开发,界面设计美观,合理,操作方便。
二、实验要求
设计一个简易的网吧计费系统,要求上网人输入卡号和密码上机,卡号或密码不正确,不能上机,卡余额不足不能上机;正在使用的机器不能被再使用;上机需要记录卡号、机器号、上机时间;下机时需要记录下机时间、发生费用和自动从卡里扣款,该机器能再被使用;下机时,需要向用户显示本次上机的详细信息。
1) 上机业务流程
卡号和密码的校验;
卡的余额的检验;
获取当前系统时间作为上机开始时间;
记录上机操作;
修改该机器的使用标志
2) 下机业务流程
选择被使用的机器号;
获取系统当前时间作为下机时间;
计算费用; 扣费;
记录下机时间和此次费用;
修改该机器的状态为可用
三、实验步骤
1 系统功能
上机
下机
注册新用户
查看历史记录
退出
上机业务流程
卡号和密码的校验;
卡的余额的检验;
获取当前系统时间作为上机开始时间;
记录上机操作;
修改该机器的使用标
2)下机业务流程
选择被使用的机器号;
获取系统当前时间作为下机时间;
计算费用;
扣费;
记录下机时间和此次费用;
修改该机器的状态为可用
2 数据库表的设计
共2张表,卡号信息表,电脑信息表。
卡号信息表card419(kahao卡号,name姓名,password密码,fee费用)
电脑信息表computer419(ID电脑编号,kahao卡号,kaishi开始时间,Onuse是否使用)
设计的界面效果图如下:
数据库连接代码:
package wbsys.entity;
import java.sql.*;
public class Lianjie {
private String DBDriver;
private String DBURL;
private String DBUser;
private String DBPass;
private Connection conn = null;
private Statement stmt = null;
public Lianjie() {
DBDriver = "com.mysql.cj.jdbc.Driver";
DBURL = "jdbc:mysql://localhost:3306/rj2018?serverTimezone=UTC&characterEncoding=utf-8";
DBUser = "root";//用户名
DBPass = "1234";//数据库密码
try {
Class.forName(DBDriver);//加载驱动程序
} catch (Exception e) {
e.printStackTrace();
}
try {
conn = DriverManager.getConnection(DBURL, DBUser, DBPass);//取得连接对象
stmt = conn.createStatement();//取得SQL语句对象
} catch (Exception e) {
e.printStackTrace();
}
}
public Connection getMyConnection() {
return conn;
}
public Statement getMyStatement() {
return stmt;
}
public void closeMyConnection() {//关闭数据库连接
try {
stmt.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
public String toString() {
return "数据库驱动程序" + DBDriver + ",链接地址" + DBURL + ",用户名" + DBUser + ",密码" + DBPass;
}
public Connection con() {
Connection con = null;
try {
con = DriverManager.getConnection(DBURL, DBUser, DBPass);
} catch (SQLException e) {
e.printStackTrace();
}
return con;
}
}
获取完整代码,查看链接:网吧计费系统附完整源代码