基于JSP+Servlet+JavaBean+DAO+Service+JDBC的职工信息管理系统

说明:

  1. 本篇博客展示的职工信息管理系统(JSP+Servlet+JavaBean+DAO+Service+JDBC)仅包含对职工信息的增删改查以及用户注册登录操作,前端页面仅略作修饰;
  2. 本篇博客以项目说明为主,具体功能实现的详细步骤请查看项目源码;
  3. 本项目属于纯练手项目,界面较为简陋,各位大佬轻点喷哈。

一、系统各层及组件描述

1.1 项目整体结构

基于JSP+Servlet+JavaBean+DAO+Service+JDBC的职工信息管理系统_第1张图片

1.2 系统各包所属层次及说明

层次 描述
domain(域模型层) com.me.domain 存放JavaBean
Dao com.me.dao 数据访问接口
com.me.dao.impl 数据访问接口的实现类
Service com.me.service 业务接口
com.me.service.impl 业务接口的实现类
controller com.me.controller 控制器
Web(表现层) com.me.web.ui 存放WEB-INF下页面的Servlet
com.me.web.filter 过滤器
com.me.util 存放数据库连接池
com.me.factory 存放Service工厂和Dao工厂
com.me.exception 存放自定义异常

说明:

(1)com.me.domain中创建了Staff和User两个bean对象,其中Staff对象声明了id,name,department,position,time五个成员变量,并创建了getter和setter方法;User对象声明了username,password,gender,email,usertype五个成员变量,并创建了getter和setter方法。
(2)com.me.dao中有IStaffDao以及IUserDao两个接口,其中在IStaffDao接口声明了: public int addStaff(Staff staff);
public int deleteStaff(String id);
public int updateStaff(Staff staff);
public Staff selectStaff(String id);
public List queryStaffs();
五个方法,用于实现对职工信息的增删查改,并在StaffDaoImpl中实现了这些方法。
在IUserDao接口中声明了:
User selectOneByUsername(String username);
int addOneUser(User user) throws UserExistException;
User selectOneByUANDS(String username,String email)throws UserExistException;
三个方法,用于实现登录注册以及查询是否已经注册,并在UserDaoImpl中实现了这些方法。
(3)com.me.service中有IStaffService以及IUserService两个业务接口,其中在IStaffService中声明了:
public void addStaff(Staff staff);
public void deleteStaff(String id);
public Staff selectStaff(String id);
public void updateStaff(Staff staff);
public List queryStaffs();
五个方法,用于实现对职工信息的增删查改,并在StaffServiceImpl中实现了这些方法。
IUserService中声明了:
void login(String username, String password, String usertype) throws UserExistException;
void register(User user) throws UserExistException;
两个方法,用于实现用户的登录注册,并在UserServiceImpl中实现了这些方法。
(4)com.me.controller为控制器层,主要有登录注册、对职工信息进行增删查改以及管理员和职工信息显示的servlet(addservlet、adminshow、DeleteServlet、LoginServlet、normalshow、RegisterServlet、showupdateservlet、updateservlet)
(5)在Web表现层中创建了LoginUIServlet、RegisterUIServlet,用于访问WEB-INF/pages里的regist.jsp以及login.jsp;
DbcpPool用于存放数据库连接池,连接数据库。

1.3 运行环境

操作系统:Windows 10;
开发工具:eclipse 2019;Tomcat 9;Navicat Premium 12;
数据库:MySQL 5.7.28

二、系统设计

2.1 功能设计

基于JSP+Servlet+JavaBean+DAO+Service+JDBC的职工信息管理系统_第2张图片

2.2 数据库设计

E-R图:
基于JSP+Servlet+JavaBean+DAO+Service+JDBC的职工信息管理系统_第3张图片

基于JSP+Servlet+JavaBean+DAO+Service+JDBC的职工信息管理系统_第4张图片message表(信息表),主要用来存放职工的信息。
基于JSP+Servlet+JavaBean+DAO+Service+JDBC的职工信息管理系统_第5张图片
users表(用户表),主要用来存放注册登录用户的信息。

2.3 界面设计

注册界面
基于JSP+Servlet+JavaBean+DAO+Service+JDBC的职工信息管理系统_第6张图片
登录界面
基于JSP+Servlet+JavaBean+DAO+Service+JDBC的职工信息管理系统_第7张图片
登录成功界面(管理员)
基于JSP+Servlet+JavaBean+DAO+Service+JDBC的职工信息管理系统_第8张图片
进入职工信息管理界面(管理员)
基于JSP+Servlet+JavaBean+DAO+Service+JDBC的职工信息管理系统_第9张图片
添加职工界面
在这里插入图片描述
修改职工界面
在这里插入图片描述删除选中后点击删除即可。
职工信息列表显示即为查询功能(全局查询)。

登录成功界面(职工)
基于JSP+Servlet+JavaBean+DAO+Service+JDBC的职工信息管理系统_第10张图片
查看信息界面(职工)
基于JSP+Servlet+JavaBean+DAO+Service+JDBC的职工信息管理系统_第11张图片

2.4 程序结构设计

基于JSP+Servlet+JavaBean+DAO+Service+JDBC的职工信息管理系统_第12张图片

三、参考文献

梁胜彬、乔保军等; Java Web应用开发与实践;清华大学出版社;2016
千人斩;学生作业信息管理系统;CSDN
加鸡腿;CSDN如何插入多列表格?;CSDN
梦里梦见梦不见的;如何把eclipse的web项目导入到idea中;CSDN

PS:

(1)项目的访问方式为运行com.me.web.ui包下的LoginUIServlet或RegisterUIServlet(需要注册后才能登陆)
(2)本次项目使用的IDE是eclipse,关于如何将本项目导入idea可以参考这篇博客:如何把eclipse的web项目导入到idea中

你可能感兴趣的:(JavaWeb,java,web,servlet,jsp)