How naveenkoppisetti/studentmanagementsystem works
This is a Java Servlet/JSP student account-management application: students register or log in, then access profile details and perform profile updates or account deletion. Servlets coordinate password hashing, session state, and DAO operations; the DAO persists student records through JDBC to MySQL. The README also documents logout, authentication filtering, responsive views, and custom error pages. Links involving unsampled JSP behavior rely only on the README’s MVC description; the graph otherwise follows the shown servlet and DAO calls.
Main entry points: StudentDAO.java Student DAO · AuthenticationFilter.java Authentication filter · RegisterServlet.java Register servlet · LoginServlet.java Login servlet
Components 19
Web views
- Registration form
src/main/webapp/register.jsp - Login form
src/main/webapp/login.jsp - Dashboard
src/main/webapp/home.jsp - Student details
src/main/webapp/details.jsp - Profile form
src/main/webapp/update.jsp - Delete confirmation
src/main/webapp/delete.jsp - Error pages
src/main/webapp/404.jsp
Servlet controllers
- Register servlet
src/main/java/controller/RegisterServlet.java - Login servlet
src/main/java/controller/LoginServlet.java - Update servlet
src/main/java/controller/UpdateServlet.java - Delete servlet
src/main/java/controller/DeleteServlet.java - Logout servlet
src/main/java/controller/LogoutServlet.java
Authentication and security
- Authentication filter
src/main/java/filter/AuthenticationFilter.java - Password hashing
src/main/java/util/PasswordUtil.java
Student data
- Student record
src/main/java/model/Student.java - Student DAO
src/main/java/dao/StudentDAO.java - JDBC connection
src/main/java/database/DBConnection.java
Other components
- Student
- MySQL database
Connections 23
- Student → Registration form: opens
README.md - Student → Login form: opens
README.md - Registration form → Register servlet: submits to
README.md - Login form → Login servlet: submits to
README.md - Register servlet → Password hashing: hashes password
src/main/java/controller/RegisterServlet.java - Register servlet → Student record: populates
src/main/java/controller/RegisterServlet.java - Register servlet → Student DAO: checks and saves
src/main/java/controller/RegisterServlet.java - Login servlet → Password hashing: hashes password
src/main/java/controller/LoginServlet.java - Login servlet → Student DAO: checks credentials
src/main/java/controller/LoginServlet.java - Login servlet → Student record: receives student
src/main/java/controller/LoginServlet.java - Student DAO → Student record: maps records
src/main/java/dao/StudentDAO.java - Student DAO → JDBC connection: uses connection
src/main/java/dao/StudentDAO.java - JDBC connection → MySQL database: connects to
src/main/java/database/DBConnection.java - Authentication filter → Dashboard: guards
src/main/java/filter/AuthenticationFilter.java - Authentication filter → Student details: guards
src/main/java/filter/AuthenticationFilter.java - Authentication filter → Profile form: guards
src/main/java/filter/AuthenticationFilter.java - Authentication filter → Login form: redirects to
src/main/java/filter/AuthenticationFilter.java - Profile form → Update servlet: submits to
README.md - Update servlet → Student record: populates
src/main/java/controller/UpdateServlet.java - Update servlet → Student DAO: updates profile
src/main/java/controller/UpdateServlet.java - Delete confirmation → Delete servlet: submits to
README.md - Delete servlet → Student DAO: deletes account
src/main/java/controller/DeleteServlet.java - Logout servlet → Login form: redirects to
src/main/java/controller/LogoutServlet.java