Deprecated:New Version Location Click To New Project
停止维护:新项目地址 点击进入
- 管理员在后台数据库中准备好学生学号(10位)后,学生可以用学号登录系统,首次登录需要自行设置密码(大于8位)
- 学生可以上传文件到系统中,上传功能基于bootstrap-fileinput
- 后台统一命名存储文件
- 管理员登陆后可以批量下载后台打包过后的文件
by tomriddle_1234
- 添加截止时间设置,截止时间过后学生无法上传作业
ALTER TABLE `shw`.`orderinfo` ADD COLUMN `odeadline` DATETIME NOT NULL DEFAULT '2022-01-01 00:00:00' AFTER `otime`;
- 管理员删除作业任务时,增加确认对话框
- 一些界面的小优化
- 添加编辑作业任务功能
- 作业名称可以用添加链接
- jQuery
- Bootstrap3
- Bootstrap-fileinput
- moment.js
- bootstrap-datepicker (bootstrap 3 v4)
- Spring MVC
- Spring
- Mybatis
- Shiro (安全框架)
- Druid(阿里巴巴的开源连接池)
- MySql
-
下载源码
你可以在Git(Git是什么,如何使用?)输入以下命令进行clone项目到本地
git clone https://github.com/itning/Student-Homework-Management-System.git
或者直接下载主分支的源码
-
使用编译器打开本项目
该项目使用IntelliJ IDEA编译器编写打包,建议同学们使用该编译器进行打开
项目使用JDK1.8进行编写,用到了JDK1.8+特性,所以最低JDK版本为1.8
-
导入SQL文件
由于该项目不会自动建库建表,所以你需要手动导入SQL
更改JDBC连接信息(数据库名,用户名,密码)
其中 user 键为数据库的用户名
其中 password 键为数据库的密码
-
更改上传文件存储目录
用户上传的文件需要持久化到硬盘上,你需要配置持久化目录
-
安装QQ互联SDK
这一步是为了能够使用QQ进行登陆
直接运行根目录下
install-qq-connect-dependency.bat
脚本即可直接运行install-qq-connect-dependency.bat即可,无需以下代码 mvn install:install-file -Dfile=<path_to_your_manually_downloaded_jar_file>.jar -DgroupId=com.qq.connect -DartifactId=qq-connect -Dversion=2.0.0.RELEASE -Dpackaging=jar
-
运行
mvn install mvn package
项目使用的Tomcat版本为8.5.20,你最好与我同步。下载该版本
-
查看Druid管理面板
默认用户名:
itning
默认密码:
kingston
页面:
http://localhost:8080/druid
-
创建数据库
CREATE DATABASE IF NOT EXISTS shw CHARACTER SET utf8mb4; USE shw;
-
导入表结构和数据
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- Table structure for history -- ---------------------------- DROP TABLE IF EXISTS `history`; CREATE TABLE `history` ( `hid` varchar(255) NOT NULL, `huid` varchar(255) NOT NULL, `hoid` int(11) NOT NULL, `type` varchar(255) NOT NULL, `filepath` varchar(255) NOT NULL, `uptime` datetime NOT NULL ON UPDATE CURRENT_TIMESTAMP, `filesize` double NOT NULL, PRIMARY KEY (`hid`), KEY `FK_hoid_oid` (`hoid`) USING BTREE, KEY `FK_huid_uid` (`huid`) USING BTREE, CONSTRAINT `history_ibfk_1` FOREIGN KEY (`hoid`) REFERENCES `orderinfo` (`oid`), CONSTRAINT `history_ibfk_2` FOREIGN KEY (`huid`) REFERENCES `user` (`uid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- ---------------------------- -- Table structure for orderinfo -- ---------------------------- DROP TABLE IF EXISTS `orderinfo`; CREATE TABLE `orderinfo` ( `oid` int(11) NOT NULL, `oname` varchar(255) NOT NULL, `osubject` varchar(255) NOT NULL, `ostate` bit(1) NOT NULL, `otime` datetime NOT NULL ON UPDATE CURRENT_TIMESTAMP, `odeadline` datetime NOT NULL ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`oid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- ---------------------------- -- Records of orderinfo -- ---------------------------- INSERT INTO `orderinfo` VALUES ('1492109980', '第二次作业', 'UI交互设计', 1, '2018-11-28 14:48:53'); INSERT INTO `orderinfo` VALUES ('795960272', '第二次作业', '软件测试', 1, '2018-11-28 14:38:11'); -- ---------------------------- -- Table structure for user -- ---------------------------- DROP TABLE IF EXISTS `user`; CREATE TABLE `user` ( `uid` varchar(255) NOT NULL, `username` varchar(255) NOT NULL, `password` varchar(255) NOT NULL, `headimg` varchar(255) DEFAULT NULL, `firstlogin` bit(1) NOT NULL DEFAULT b'1', `name` varchar(255) NOT NULL, `percode` varchar(255) NOT NULL, `userOpenID` varchar(255) DEFAULT NULL, PRIMARY KEY (`uid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; -- ---------------------------- -- Records of user -- ---------------------------- INSERT INTO `user` VALUES ('1', '000000000000', '0123456789', null, 1, '管理员', 'admin', null); INSERT INTO `user` VALUES ('2', '111111111111', '123456789', null, 1, '用户1', 'user', null);