一.实现的图形界面
实现功能:小型的学生管理系统,数据库的增删改查功能
我们这个项目的数据库只有一个表stu,所以对数据库操作实际就是对stu表的数据进行增删改查。
主界面:
添加界面:
修改界面:
二.学生管理系统数据库
--创建数据库 -- CREATE DATABASE test; --建表-- CREATE TABLE `STU` ( `stuID` varchar(30) NOT NULL, `stuName` varchar (50) NOT NULL, `stuSex` CHAR(2) NULL, `stuAge` int, `stuJg` varchar(30), `stuDept` varchar(40), PRIMARY KEY (`stuID`), CONSTRAINT `stuSex` CHECK (`stuSex` in('男','女')) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; --表中插入数据 -- INSERT INTO `STU` VALUES ('sp001', '孙悟空', '男',21,'花果山','少林派'); INSERT INTO `STU` VALUES ('sp002','猪八戒','男',15,'高老庄','天上的'); INSERT INTO `STU` VALUES ('sp003','沙悟净','男',26,'流沙河','水里的'); INSERT INTO `STU` VALUES ('sp004','唐三藏','男',21,'长安','庙里的'); --查看表数据 -- select * from stu
三.学生管理系统程序
项目下载地址: 链接:https://pan.baidu.com/s/1bOtvj87tLNMKQkT4Ko9qVw 提取码:68c2
这里使用了三种模式分别实现这个项目。
1.mode1模式:使用mode1模式完成的项目程序在com.test1中。
最大的特点:界面和操作是放在一起的;
优点:简单方便;
缺点:代码复用性差,可读性不好,可维护性不好
2.mode2模式:使用mode1模式完成的项目程序在com.test2中。
最大的特点:界面和操作是分开的;
缺点:复杂性较高。
与model1相比,其model2的改动在:model2的数据库操作(增删改查)都放到stuModel类中进行的,而model1的数据库操作是单独写到一个类中,比如查操作写在StuModel类,增写在StuAddDialog类中,改写在StuUpdataDialog类中,删写在StuManage类中。model2这样操作使得当修改数据库时更方便,不需要到每一个操作类中去一一修改,代码可读性以及复用性更高。
3.mode3模式:使用mode3模式完成的项目程序在com.test3中。
model3模型相比model2模型的优点在于:
对于model2模型,当数据模型非常少的时候,我们采用model2模型时没太大问题的,但当我们遇到数据模型比较多时,我们进行数据库操作时,多个数据模型对数据库直接操作,这样与model1界面程序对数据库直接操作类似,同样的数据库多次操作,所以遇到多数据模型时,我们采用model3模型,编写一个SqlHelper类,让这些数据模型调用SqlHelper类,然后让这个类对数据库直接操作。