从 0 到 100:基于 Java 的大学选修课选课小程序开发笔记(上)
作者:CC同学
- 2024-12-29 广东
本文字数:3013 字
阅读完需:约 10 分钟
背景
为学生提供便捷的课程选择方式,并帮助学校进行课程管理和资源调配;主要功能包括:课程展示,自主选课,取消选课,后台录入课程,统计每门课程报名情况,导出数据,用户管理,管理员管理等。
用户角色:查看课程详情(课程大纲、授课方式、考核方式、学分等信息)、在特定的时间窗口内开放选课,用户可以在规定时间内自由选课
管理员角色:发布选修课程信息,包括课程内容、时间安排、教学大纲
后台选课管理:按每门课程进行选课统计,支持名单数据导出 Excel,打印
概要设计
技术运用
前端基于微信小程序平台进行开发
后端基于 Java Springboot 架构开发
数据库: MySQL (8.0+)
数据库设计
-- ------------------------------ Table structure for enlesson_enroll-- ----------------------------DROP TABLE IF EXISTS `enlesson_enroll`;CREATE TABLE `enlesson_enroll` ( `ENROLL_ID` int NOT NULL AUTO_INCREMENT, `ENROLL_TITLE` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL, `ENROLL_VOUCH` int NOT NULL DEFAULT 0, `ENROLL_STATUS` int NOT NULL DEFAULT 0, `ENROLL_CATE_ID` int NOT NULL DEFAULT 0, `ENROLL_CATE_NAME` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL, `ENROLL_MAX_CNT` int NOT NULL DEFAULT 0, `ENROLL_START` bigint NOT NULL, `ENROLL_END` bigint NOT NULL, `ENROLL_ORDER` int NOT NULL DEFAULT 9999, `ENROLL_VIEW_CNT` int NOT NULL, `ENROLL_JOIN_CNT` int NOT NULL DEFAULT 9, `ENROLL_FORMS` longtext CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL, `ENROLL_OBJ` longtext CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL, `ADD_TIME` bigint NULL DEFAULT 0, `EDIT_TIME` bigint NULL DEFAULT 0, PRIMARY KEY (`ENROLL_ID`) USING BTREE) ENGINE = InnoDB AUTO_INCREMENT = 21 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ------------------------------ Table structure for enlesson_enroll_join-- ----------------------------DROP TABLE IF EXISTS `enlesson_enroll_join`;CREATE TABLE `enlesson_enroll_join` ( `ENROLL_JOIN_ID` int NOT NULL AUTO_INCREMENT, `ENROLL_JOIN_ENROLL_ID` int NOT NULL DEFAULT 0, `ENROLL_JOIN_USER_ID` int NOT NULL DEFAULT 0, `ENROLL_JOIN_STATUS` int NOT NULL DEFAULT 0, `ADD_TIME` bigint NOT NULL DEFAULT 0, `EDIT_TIME` bigint NOT NULL DEFAULT 0, PRIMARY KEY (`ENROLL_JOIN_ID`) USING BTREE) ENGINE = InnoDB AUTO_INCREMENT = 1931 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci ROW_FORMAT = Dynamic;
-- ------------------------------ Table structure for enlesson_fav-- ----------------------------DROP TABLE IF EXISTS `enlesson_fav`;CREATE TABLE `enlesson_fav` ( `FAV_ID` int NOT NULL AUTO_INCREMENT, `FAV_USER_ID` int NOT NULL DEFAULT 0, `FAV_TITLE` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `FAV_TYPE` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `FAV_OID` int NOT NULL DEFAULT 0, `FAV_PATH` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `ADD_TIME` bigint NOT NULL DEFAULT 0, `EDIT_TIME` bigint NOT NULL DEFAULT 0, PRIMARY KEY (`FAV_ID`) USING BTREE) ENGINE = InnoDB AUTO_INCREMENT = 29 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC;
-- ------------------------------ Table structure for enlesson_news-- ----------------------------DROP TABLE IF EXISTS `enlesson_news`;CREATE TABLE `enlesson_news` ( `NEWS_ID` int NOT NULL AUTO_INCREMENT, `NEWS_TITLE` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `NEWS_CATE_ID` int NOT NULL DEFAULT 0, `NEWS_CATE_NAME` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, `NEWS_STATUS` int NOT NULL DEFAULT 1, `NEWS_ORDER` int NOT NULL DEFAULT 9999, `NEWS_VOUCH` int NOT NULL DEFAULT 0, `NEWS_CONTENT` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL, `NEWS_VIEW_CNT` int NOT NULL DEFAULT 0, `NEWS_PIC` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, `NEWS_OBJ` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL, `NEWS_FORMS` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL, `ADD_TIME` bigint NOT NULL DEFAULT 0, `EDIT_TIME` bigint NOT NULL DEFAULT 0, PRIMARY KEY (`NEWS_ID`) USING BTREE) ENGINE = InnoDB AUTO_INCREMENT = 68 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC;
-- ------------------------------ Table structure for enlesson_setup-- ----------------------------DROP TABLE IF EXISTS `enlesson_setup`;CREATE TABLE `enlesson_setup` ( `SETUP_ID` int NOT NULL AUTO_INCREMENT, `SETUP_TYPE` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `SETUP_KEY` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `SETUP_VALUE` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `ADD_TIME` bigint NOT NULL DEFAULT 0, `EDIT_TIME` bigint NOT NULL DEFAULT 0, PRIMARY KEY (`SETUP_ID`) USING BTREE) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC;
-- ------------------------------ Table structure for enlesson_user-- ----------------------------DROP TABLE IF EXISTS `enlesson_user`;CREATE TABLE `enlesson_user` ( `USER_ID` int NOT NULL AUTO_INCREMENT, `USER_NAME` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `USER_ACCOUNT` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `USER_STATUS` int NOT NULL DEFAULT 1, `USER_PASSWORD` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `USER_LOGIN_TIME` bigint NOT NULL DEFAULT 0, `USER_LOGIN_CNT` int NOT NULL DEFAULT 0, `USER_OBJ` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL, `USER_FORMS` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL, `ADD_TIME` bigint NOT NULL DEFAULT 0, `EDIT_TIME` bigint NOT NULL DEFAULT 0, PRIMARY KEY (`USER_ID`) USING BTREE) ENGINE = InnoDB AUTO_INCREMENT = 1219 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC;
SET FOREIGN_KEY_CHECKS = 1;
复制代码
UI 设计
后台管理
git 代码下载
划线
评论
复制
发布于: 刚刚阅读数: 2
CC同学
关注
CC同学的小程序开发笔记 2021-06-13 加入
大鹅厂的小小程序媛,vx: cclinux0730









评论