学生信息管理系统:SSM框架实现学生信息的增删改查

一、项目概述:

该项目主要实现对学生信息的管理,通过学生信息管理系统能够进行学生信息的增加、查看,查询,删除等功能,实现学生管理工作的系统化和自动化。

该项目已经上传到github了,想看源码请移步:https://github.com/LazyTraveller/student_info_system   (内含数据库脚本)

百度网盘:链接:https://pan.baidu.com/s/1UEv3C7H0WvrPXYt18D3flw 
提取码:54yf 
 

二、项目采用的技术:

该项目采用的是SSM框架技术,SSM框架是spring MVC ,spring和mybatis框架的整合,是标准的MVC模式。

(1)使用spring MVC负责请求的转发和视图管理。

(2)spring实现业务对象管理,mybatis作为数据对象的持久化引擎。

(3)mybatis是对jdbc的封装,它让数据库底层操作变的透明。mybatis的操作都是围绕一个sqlSessionFactory实例展开的。mybatis通过配置文件关联到各实体类的Mapper文件,Mapper文件中配置了每个类对数据库所需进行的sql语句映射。在每次与数据库交互时,通过sqlSessionFactory拿到一个sqlSession,再执行sql命令。

将整个系统划分为表现层,controller层,service层,DAO层四层。

(1)jsp(view)发送请求。

(2)通过核心控制器DispatcherServlet调用请求解析器:HandlendMapping对请求进行解析,通过映射关系匹配到Controller层。

(3)在控制层调用业务逻辑层(service),数据持久层(DAO)返回控制层,请求完成获取一个结果,设置一个要跳转的视图,(ModelAndView装载并传输数据,设置视图)。

(4)核心控制器调用 视图解析器:ViewResolver解析视图,匹配相应的页面实现页面跳转。

三、SSM框架配置文件的整合

配置文件

功能描述

web.xml

配置了前端控制器,在SSM框架中,前端控制器起着最主要的作用

pom.xml

这里使用maven来引入项目所需要的jar包,所以也就不需要手动来管理jar包了

log4j.properties

固定配置,日志配置文件

spring-mvc.xml

需要实现基本功能的配置 

      1 配置 <mvc:annotation-driven/>

      2 配置 <context:component-scan base-package="com.springmvc.controller"/> //        配置controller的注入

      3 配置视图解析器

applicationContext.xml

1 配置 <context:component-scan base-package="com.rhzh"/>

//自动扫描,将标注Spring注解的类自动转化Bean,同时完成Bean的注入

   2 加载数据资源属性文件

   3 配置数据源  三种数据源的配置方式 http://blog.csdn.net/yangyz_love/article/details/8199207

   4 配置sessionfactory

   5 装配Dao接口

   6 声明式事务管理 

   7 注解事务切面

 

mybatis-config.xml

配置pageHelper分页插件

四、各个功能模块实现的方法:

说明

Entity实体

dao

(数据库持久层)

Service业务层层

Controller

(控制层)

View

管理员登录

Admin

构造方法、get、set方法

AdminDao(findByNameAndPwd()

)、AdminDao.xml(findByNameAndPwd()

adminService.authenticate()

LoginController中的login()

Login.jsp

注销登录

Admin

构造方法、get、set方法

 

 

Logout()调用session.invalidate()

返回 Login.jsp

增加学生信息

Student

构造方法、get、set方法

StudentDao 中的方法addStudent()

 

StudentService中 addStudent()

StudentController

中的createStudent()

addStudent.jsp

删除学生信息

Student

构造方法、get、set方法

studentDao.delStudent(studentId)

studentService.delStudent(studentId)

StudentController

中的delete()

listStudentPage.jsp

编辑学生信息

Student

构造方法、get、set方法

StudentDao 中的方法updateStudent

StudentService中 updateStudent()

StudentController

中的 update()

editStudent.jsp

查看学生信息

Student

构造方法、get、set方法

StudentDao 中的 getStudent()

studentService.getStudent()

StudentController

中的  viewStudent()

viewStudent.jsp

查询学生信息

Student

构造方法、get、set方法

studentDao.findByNameLike()

studentService.findByNameLike()

StudentController

中的   selectStudent

select.jsp

分页显示

Student

构造方法、get、set方法

studentDao.findAllStudent()

studentService.findStudentList()

StudentController

中的 pageStudentList()

listStudentPage.jsp

util

(工具类)

该包下存放一些开发中常用的工具类,如连接数据库操作

 

 

 

 

五、系统设计

(1)该系统实现的功能图如下:

                                学生信息管理系统:SSM框架实现学生信息的增删改查 

 

(2)项目架构:

                                                       学生信息管理系统:SSM框架实现学生信息的增删改查

                                                       学生信息管理系统:SSM框架实现学生信息的增删改查

 

(3)数据库设计:

学生表

No

列名

属性

必须

主键

说明

类型

大小

1

studentId

Bigint

20

Y

Y

学生学号

2

name

Varchar

255

Y

 

学生姓名

3

adminId

bigint

20

Y

 

管理员工号

4

sex

varchar

60

Y

 

学生性别

5

address

text

255

Y

 

学生地址

6

Cellphone

Varchar

255

Y

 

学生电话

7

dateCreate

timeStamp

255

Y

 

创建日期

8

Status

Tinyint

4

Y

 

激活状态

 

管理员表:

No

列名

属性

必须

主键

说明

类型

大小

1

adminId

bigint

20

Y

Y

管理员编号

2

adminname

Varchar

30

Y

 

管理员账号

3

Password

Varchar

60

Y

 

管理员密码

4

email

varchar

80

Y

 

管理员邮箱

 六、系统实现

1、登陆

学生信息管理系统:SSM框架实现学生信息的增删改查

 

 

登陆时调用LoginController,该控制器完成相应的逻辑操作(判断用户名、密码是否为空),并且调用相应的AdminDao数据库访问层的相应组件,完成登陆校验,然后将结果返回给视图层 ,视图层提供给用户,以界面的形式展示。

Login.jsp

学生信息管理系统:SSM框架实现学生信息的增删改查

学生信息管理系统:SSM框架实现学生信息的增删改查

 

LoginController控制器:

学生信息管理系统:SSM框架实现学生信息的增删改查

学生信息管理系统:SSM框架实现学生信息的增删改查

 

AdminService:

学生信息管理系统:SSM框架实现学生信息的增删改查

 

adminDao:

学生信息管理系统:SSM框架实现学生信息的增删改查

 

adminDao.xml:

学生信息管理系统:SSM框架实现学生信息的增删改查

 

2、系统主界面

学生信息管理系统:SSM框架实现学生信息的增删改查

listStudentpage.jsp:

 

学生信息管理系统:SSM框架实现学生信息的增删改查

学生信息管理系统:SSM框架实现学生信息的增删改查

学生信息管理系统:SSM框架实现学生信息的增删改查

StudentController:

学生信息管理系统:SSM框架实现学生信息的增删改查

 

StudentServive:

学生信息管理系统:SSM框架实现学生信息的增删改查

studentDao:

学生信息管理系统:SSM框架实现学生信息的增删改查

3、添加学生信息

学生信息管理系统:SSM框架实现学生信息的增删改查

 

addStudent.jsp:

学生信息管理系统:SSM框架实现学生信息的增删改查

 

学生信息管理系统:SSM框架实现学生信息的增删改查

学生信息管理系统:SSM框架实现学生信息的增删改查

 

StudentController:

学生信息管理系统:SSM框架实现学生信息的增删改查

学生信息管理系统:SSM框架实现学生信息的增删改查

 

StudentService:

学生信息管理系统:SSM框架实现学生信息的增删改查

StudentDao:

学生信息管理系统:SSM框架实现学生信息的增删改查

4、编辑学生信息

学生信息管理系统:SSM框架实现学生信息的增删改查

editStudent.jsp:

 

学生信息管理系统:SSM框架实现学生信息的增删改查

学生信息管理系统:SSM框架实现学生信息的增删改查

 

StudentController:

学生信息管理系统:SSM框架实现学生信息的增删改查

StudentService:

学生信息管理系统:SSM框架实现学生信息的增删改查

 

StudentDao:

学生信息管理系统:SSM框架实现学生信息的增删改查

 

5、删除学生信息

学生信息管理系统:SSM框架实现学生信息的增删改查

listStudentPage.jsp:

 

学生信息管理系统:SSM框架实现学生信息的增删改查

学生信息管理系统:SSM框架实现学生信息的增删改查

StudentController:
学生信息管理系统:SSM框架实现学生信息的增删改查

StudentService:

学生信息管理系统:SSM框架实现学生信息的增删改查

StudentDao:

学生信息管理系统:SSM框架实现学生信息的增删改查

6、查看学生信息

学生信息管理系统:SSM框架实现学生信息的增删改查

viewStudent.jsp:
学生信息管理系统:SSM框架实现学生信息的增删改查

学生信息管理系统:SSM框架实现学生信息的增删改查

 

StudentController:

学生信息管理系统:SSM框架实现学生信息的增删改查

StudentService:

学生信息管理系统:SSM框架实现学生信息的增删改查

StudentDao:

学生信息管理系统:SSM框架实现学生信息的增删改查

 

7、查找学生信息

学生信息管理系统:SSM框架实现学生信息的增删改查

 

Select.jsp:

 

学生信息管理系统:SSM框架实现学生信息的增删改查

学生信息管理系统:SSM框架实现学生信息的增删改查

 

StudentController:

学生信息管理系统:SSM框架实现学生信息的增删改查

StudentService:

学生信息管理系统:SSM框架实现学生信息的增删改查

StudentDao:

学生信息管理系统:SSM框架实现学生信息的增删改查

StudentDao.xml:

学生信息管理系统:SSM框架实现学生信息的增删改查

 

8、注销登录

  当用户登录后,点击退出链接可以完成退出。退出成功后会到达登录页面!

退出后移除用户的Session,并且跳到系统的登陆页面

session.removeAttribute("adminname");

session.invalidate();

response.sendRedirect("login.jsp")

 

至此,该项目实现了学生信息的增删改查的功能了。

上一篇:测试文章111


下一篇:Mybatis框架----->(5) 深入理解Mybatis封装输出的结果和模糊查询like