文章简介
基于JavaSwing+MySQL的数据库课程设计
提取地址:https://pan.baidu.com/s/1lRPtFszna7K_4CY2EkRoFg
提取码:h2p8
系统管理员User:admin ;Password:0;
使用建议:因为没有写正则表达式检验每一输入框的内容是否合法,最好录入常规一点的数据,尽量不要重复;
前言
本人大二,很早之前就想用Swing写一个管理系统了,本学期刚好有数据库这门课程,就从最初上课的时候开始学习Java的相关内容,最后也是在做课程设计的时候把它写了出来,虽然过程也比较辛苦,结果也有一些瑕疵,但是拿来当课程设计足够了。
一、项目截图
- 队员界面
二、层构成介绍
-controller:控制层(程序启动处);
-dao:数据库层(类操作数据库的方法);
-Image:图像层(各类图标、背景图片);
-util:工具层(例如面板切换);
-view:视图层(前端界面);
二、运行必读(必看)
- 开发环境:Eclipse
- 数据库:MySQL 8.0
- 使用步骤:1.导入压缩包里的sql文件到MySQL数据库;
(如果不会可参阅另一篇文:https://blog.csdn.net/Elliseaon/article/details/118275142)
2.修改src/com/Demo/util/DBUtil.java文件下的数据库用户名和密码;
3.运行src/com/Demo/controller路径下的Start.java;
三、数据库设计
1.需求分析
2.数据表
- cp_competition表
| |
---|
CpName | vachar(16) |
RegisWay | vachar(16) |
Venue | vachar(16) |
RegisStart | date |
RegisEnd | date |
CpStart | date |
CpEnd | date |
Info | date |
- cp_team表
| |
---|
TeamNO | vachar(10) |
TeamName | vachar(16) |
Director | vachar(16) |
DirectorTEL | vachar(11) |
- cp_admin表
| |
---|
id | int |
name | vachar(16) |
password | vachar(16) |
createDate | datetime |
- cp_Captain表
| |
---|
TeamNO | vachar(10) |
CaptainName | vachar(8) |
Sno | vachar(10) |
Sex | vachar(2) |
Sage | vachar(4) |
Class | vachar(16) |
CaptainTel | vachar(11) |
CaptainUser | vachar(16) |
Password | vachar(16) |
- cp_Member表
| |
---|
TeamNO | vachar(10) |
MemberName | vachar(8) |
Sno | vachar(10) |
Sex | vachar(2) |
Sage | vachar(4) |
Class | vachar(16) |
CaptainTel | vachar(11) |
MemberUser | vachar(16) |
Password | vachar(16) |
- team_sign_up表
| |
---|
TeamNO | vachar(10) |
CpName | vachar(16) |
RsType | vachar(10) |
ChType | vachar(2) |
id | int |
3.DButil连接数据库
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DbUtil {
private String dbUrl="jdbc:mysql://localhost:3306/db_competition_system?useUnicode=true&characterEncoding=utf8";
private String dbUserName="root";
private String dbPassword="121805";
private String jdbcName="com.mysql.cj.jdbc.Driver";
public Connection getCon(){
try {
Class.forName(jdbcName);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
Connection con = null;
try {
con = DriverManager.getConnection(dbUrl, dbUserName, dbPassword);
} catch (SQLException e) {
e.printStackTrace();
}
return con;
}
public void closeCon(Connection con)throws Exception{
if(con!=null){
con.close();
}
}
public static void main(String[] args) {
DbUtil dbUtil=new DbUtil();
try {
dbUtil.getCon();
System.out.println("数据库连接成功!");
} catch (Exception e) {
e.printStackTrace();
System.out.println("数据库连接失败");
}
}
}
总结
- 实现了JDBC的基本操作:增删改查;
- 数据表中存在依赖关系,可通过前端实现多表的级联操作;
- 满足了一定的功能需求,拿来当课程设计绝对没问题,但如果想进一步实用,还需要修改;
- 以上纯个人想法,如有错误还望指正;