• Stars
    star
    112
  • Rank 312,240 (Top 7 %)
  • Language
    Java
  • License
    MIT License
  • Created over 5 years ago
  • Updated about 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

🏫 🎓 一个未使用框架的学生信息管理系统 : 项目概述全面,代码注释详细,逻辑结构清晰,非常适合作为初学 Java web 的同学的第一个练手项目啦 ~

🏫🎓 Student Information Management System

项目进度 (💬 pause update)

  • 第一阶段 : 信息管理功能 ✅
  • 第二阶段 : 成绩管理功能 ❌

用户权限介绍

  • 管理员 : 具有所有信息管理模块的权限
  • 教师 : 具有学生信息管理模块的所有权限,但在教师信息管理模块中只具有查询及修改个人信息的权限
  • 学生 : 只具有查询并修改个人信息的权限

设置权限的核心示例代码如下( 没有使用任何安全框架 ) :

// 用户权限设置: 如果当前用户类型为教师,则将其权限设置为仅能查询个人信息
if (userType == 3) {
    TeacherInfo currentTeacherInfo = (TeacherInfo) request.getSession().getAttribute("userInfo");
	teacherInfo.setId(currentTeacherInfo.getId());
}

// 获取分页后的教师列表信息
List<TeacherInfo> teacherList = teacherDao.getTeacherList(teacherInfo, new Paging(currentPage, pageSize));

开发环境

工具 版本或描述
OS Windows 10
JDK 11.0.2
IDE Eclipse EE 2018-12 (4.10.0)
Server Apache Tomcat v9.0
MySQL 8.0.11

本项目的数据库版本为8.0.11,请广大版本为5.0.0+的同学注意咯:可通过逐个复制表结构来创建该数据库哟 ~

图片预览

  • 用户登录页

  • 系统主页

  • 学生信息管理页

  • 数据库 ER 图

项目结构

│
└─student_information_management_system
    │       
    │                                                                                       
    ├─database
    │      SMS.sql
    │
    ├─src
    │  │  databaseConfig.properties
    │  │
    │  └─pers
    │      └─huangyuhui
    │          └─sms
    │              ├─dao
    │              │      AdminDao.java
    │              │      BasicDao.java
    │              │      ClazzDao.java
    │              │      StudentDao.java
    │              │      TeacherDao.java
    │              │
    │              ├─filter
    │              │      LoginFilter.java
    │              │
    │              ├─model
    │              │      AdminInfo.java
    │              │      ClazzInfo.java
    │              │      Paging.java
    │              │      StudentInfo.java
    │              │      TeacherInfo.java
    │              │
    │              ├─servlet
    │              │      ClazzManagementServlet.java
    │              │      LoginServlet.java
    │              │      OutVerifiCodeServlet.java
    │              │      PersonalManagementServlet.java
    │              │      PhotoServlet.java
    │              │      StuManagementServlet.java
    │              │      SysMainInterfaceServlet.java
    │              │      TeacherManagementServlet.java
    │              │
    │              └─util
    │                      CreateVerifiCodeImage.java
    │                      DbConfig.java
    │                      DbUtil.java
    │                      StringUtil.java
    │
    └─WebContent
        │  index.jsp
        │  refresh.jsp
        │
        ├─easyui
        │  │
        │  ├─css       
        │  │
        │  ├─js
        │  │     
        │  └─themes
        │      
        │
        ├─h-ui
        │  │
        │  ├─css
        │  │      
        │  ├─images
        │  │
        │  ├─js
        │  │       
        │  ├─lib
        │  │
        │  └─skin
        │     
        │
        ├─META-INF
        │      MANIFEST.MF
        │
        ├─resource
        │  └─image
        │          default_portrait.jpg
        │
        └─WEB-INF
            │  web.xml
            │
            ├─lib
            │      commons-beanutils-1.8.3.jar
            │      commons-collections-3.2.1.jar
            │      commons-fileupload-1.2.1.jar
            │      commons-io-1.4.jar
            │      commons-lang-2.5.jar
            │      commons-logging-1.1.1.jar
            │      ezmorph-1.0.6.jar
            │      FilelLoad.jar
            │      json-lib-2.3-jdk15.jar
            │      jsonplugin-0.34.jar
            │      jstl.jar
            │      mysql-connector-java-8.0.11.jar
            │      standard.jar
            │
            └─view
                │  login.jsp
                │
                ├─class
                │      classList.jsp
                │
                ├─error
                │      404.jsp
                │      500.jsp
                │
                ├─management
                │      personalView.jsp
                │
                ├─student
                │      studentList.jsp
                │
                ├─system
                │      main.jsp
                │      welcome.jsp
                │
                └─teacher
                        teacherList.jsp

文件说明

  1. 数据库文件
SMS.sql
  1. 数据库配置文件
databaseConfig.properties
  1. H-ui 前端框架
h-ui/
  1. EasyUI 前端框架
easyui/

🕗 回首仔细阅读并认真思索该项目的源码,惊喜地发现该项目中的代码有许多需要优化的地方,这毕竟是我第一个Java web小项目,所以暂请原谅吧~ 为了让你写出更加优美的代码及更加具有可扩张性的项目,这里我给出一个非常适合初学设计模式的同学用于学习与参考的项目 :https://github.com/YUbuntu0109/design-patterns-in-java

📚更多有趣项目及详细学习笔记请前往我的个人博客哟(づ ̄3 ̄)づ╭❤~ : https://yubuntu0109.github.io/

👩‍💻学习笔记已全部开源 : https://github.com/YUbuntu0109/YUbuntu0109.github.io

☕ Look forward to your contribution, if you need any help, please contact me~ QQ : 3083968068

More Repositories

1

sms-ssm

🏫🎓 一个基于 SSM 的简单学生管理系统,项目概述全面,代码注释详细,逻辑结构清晰,对于初学 SSM 的同学非常具有参考与学习价值哟 !
Java
648
star
2

blog

✍ GoogTech's Daily Blog: share daily life, idea, and experience.
JavaScript
426
star
3

vsblog

🖖 A simple personal blog system for beginners who wants to integrate the SpringBoot with the Vue framework.
Vue
100
star
4

springboot-beginner

🔰 📝 这可能是流程最清晰、代码最干净、注释最详细的 SpringBoot 入门项目咯,对于初学 SpringBoot 的同学非常具有参考与学习价值哟 ~
Java
80
star
5

design-patterns-in-java

☕ 📖 使用通俗易懂的案例,类图,及配套学习笔记来详解 Java 的二十三种设计模式 !
Java
38
star
6

ssm-beginner

🔰 📝 一个简单的SSM整合项目:项目概述全面,代码注释详细,逻辑结构清晰,对于初学SSM的同学非常具有参考与学习价值哟 ~
Java
24
star
7

Student-management-system-CS

🏫 🎓 Desktop applications developed using the Java programming language ~
Java
22
star
8

leetcode

☕ The learning note about data structures, algorithms, and leetcode problems, which are based on java、python、golang, and c++.
Java
11
star
9

crawler-learning

🕷 一个基于 HttpClient,Jsoup,WebMagic 的迷你版 JD 商城图书爬虫 ~
Java
8
star
10

Gluttonous-Snake

🍇 🐍 🍉 使用 Java Swing 编写的水果贪吃蛇小游戏~
Java
7
star
11

task

✅ It's a mini todo list which is based on vue, gin framework, and sqlite3 database. no complicated configurations and run it by one command !
Go
6
star
12

penetration-testing-learning

👁 THE QUIETER YOU ARE THE MORE YOU ARE ABLE TO HEAR ~
Python
6
star
13

note

📖 The Learning note about data structure & algorithm, operating-system, computer-network, computer-compose-principle, and fundamentals-of-compiling.
4
star
14

GoogTech

It's my public profile !
2
star
15

iblog-docs

📖 the detailed docs about the iblog project : https://docs.iblog.run
HTML
2
star
16

weather

🌈 Get the weather information then ouput voice prompt and send it to your WeChat on the specified time.
Python
2
star
17

iblog-azure-test

🔧 it's used to simulate the continuous integration and deployment the iblog with azure devops .
Java
2
star
18

face-recognition

📷 A Simple Face Recognition Program Which Base On Baidu AIP And Output The Voice Prompt By Pyttsx3.
Python
2
star
19

iblog

✨ An ultra lightweight blogging system and the detailed docs : https://docs.iblog.run
Java
2
star
20

JavaMail

An application for manipulating mail.
Java
1
star
21

Linux-Ubuntu

The operation system of Linux which give me the feeling : so simple and so cool ~
Shell
1
star
22

Shiro-learning

learning notes about the Java security framework ~
Java
1
star
23

Python-learning

🐍 Python is an easy to read, use, and learn programming language ~
Python
1
star
24

000days

🎉 Day 000 of #100DaysOfPlan ( Not update due to the private information but I still have to insist on it in the daily life )
Python
1
star
25

awesome-tensorflow-tutorial

📃 A curated list of awesome TensorFlow tutorial for beginner : https://tensorflow.studynote.life
Jupyter Notebook
1
star
26

Instant-messaging-software---Java-swing

💬 The Instant messaging programs designed for myself ~
Java
1
star
27

anonymous

👁 < THE QUIETER YOU ARE THE MORE YOU ARE ABLE TO HEAR />
HTML
1
star
28

pyoogle

👋 Do you wanna get some private infos ? Come on guys maybe you can find it at https://pyoogle.info
Python
1
star
29

course.studynote.life

📖 Study notes about courses of the university : https://course.studynote.life
1
star