0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于SSM框架的管理系统

汽车电子技术 来源:Java烂笔头 作者:小週 2023-02-28 14:41 次阅读

基于SSM框架的管理系统

【文末附源码】

1

前言

基于SSM框架的管理系统 简洁版

实现 登录注册

可继续完善增加前端、校验、其他功能等;

可作为SSM项目开发练习基础模型;

课程设计毕业设计开发基础;

任何复杂的框架都是简单的知识组合并延伸的,学好基础知识才是最重要的;

此项目简单,便于理解基本原理,为复杂SSM复杂项目的开发打下基础。

2

环境准备

开发平台 :IDEA 2019

数据库 :MySQL 5.0.22

服务器 :Tomcat 9.0.37

注意 :需要安装IDEA开发平台、MySQL数据库和Tomcat服务器,版本不一定完全一致,做好版本适应性配置即可。

3

项目结构

3.1数据库及Java代码文件

图片

3.2Jsp等前端代码

图片

3.3Tomcat服务器配置与运行

图片

3.4MySQL数据库

图片

4

基本原理

4.1相关概念

** Spring**

Spring是一个开源框架,是2003年兴起的轻量级的Java开发框架,为解决企业应用开发的复杂性而创建的。简单来说,Spring是一个轻量级的控制反转(IOC)和面向切面(AOP)的容器框架。日常开发中IOC容器使用较多,可以装载Bean,即Java中的类,不用在每次使用类的时候初始化,很少出现关键字new。另外Spring的AOP,事务管理等等也会经常使用。

      IOC:

     控制反转,是一种降低对象之间耦合关系的设计思想。如:租赁房屋,平常租房需要自己逐个小区寻找房屋,然后使用了IOC之后,即需找一个租房中介,把对房屋的需求告诉中介,就可以直接找到合适的房屋。即把需求交给了第三方,有第三方帮助完成需求,中介就相当于Spring容器。

       AOP:

      面向切面编程,是面向对象开发的一种补充,允许开发人员在不改变原来模型的基础上动态的修改模型以满足新的需求,如:动态的增加日志、安全或异常处理等。AOP使业务逻辑各部分间的耦合度降低,提高程序可重用性,提高开发效率。

** SpringMVC**

Spring MVC分离了控制器、模型对象、分派器以及处理程序对象的角色,更容易进行定制。

SpringMVC工作流程:

1.用户向服务器发送请求,请求被Spring前端控制Servelt DispatcherServlet捕获;

2.DispatcherServlet对请求URL进行解析,得到请求资源标识符(URI)。然后根据该URI,调用HandlerMapping获得该Handler配置的所有相关的对象(包括Handler对象以及Handler对象对应的拦截器),最后以HandlerExecutionChain对象的形式返回;

3.DispatcherServlet 根据获得的Handler,选择一个合适的HandlerAdapter。(注:如果成功获得HandlerAdapter后,此时将开始执行拦截器的preHandler(...)方法)

4.提取Request中的模型数据,填充Handler入参,开始执行Handler(Controller)。在填充Handler的入参过程中,根据你的配置,Spring将帮你做一些额外的工作:

    HttpMessageConveter:将请求消息(如Json、xml等数据)转换成一个对象,将对象转换为指定的响应信息;

    数据转换:对请求消息进行数据转换。如String转换成IntegerDouble等;

    数据格式化:对请求消息进行数据格式化。如将字符串转换成格式化数字或格式化日期等;

    数据验证:验证数据的有效性(长度、格式等),验证结果存储到BindingResult或Error;

5.Handler执行完成后,向DispatcherServlet返回一个ModelAndView对象;

6.根据返回的ModelAndView,选择一个适合的ViewResolver(必须是已经注册到Spring容器中的 ViewResolver)返回给DispatcherServlet;

 7.ViewResolver 结合Model和View,来渲染视图;

 8.将渲染结果返回给客户端。

图片

** MyBatis**

MyBatis是一个基于Java的持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis使用简单的XML或注解用于配置和原始映射,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。MyBatis是对Jdbc的封装,让数据库底层操作变的透明。Mybatis的操作都是围绕一个sqlSessionFactory实例展开的。mybatis通过配置文件关联到各实体类的Mapper文件,Mapper文件中配置了每个类对数据库所需进行的sql语句映射。在每次与数据库交互时,通过sqlSessionFactory拿到一个sqlSession,再执行sql命令。

4.2实现流程

0.数据库database-;

1.实体类com.pojo-,定义对象的属性;

2.mapper-Mapper.xml(Mybatis),其中定义功能,对应要对数据库进行的那些操作,比如insert、selectAll、selectByKey、deleteupdate等;

3.com.dao-Mapper.java,将Mapper.xml中的操作按照id映射成Java函数;

4.com.Service-Service.java,为控制层提供服务,接受控制层的参数,完成相应的功能,并返回给控制层;

5.com.controller-Controller.java,连接页面请求和服务层,获取页面请求的参数,通过自动装配,映射不同的URL到相应的处理函数,并获取参数,对参数进行处理,之后传给服务层;

6.Jsp-前端JSP页面调用,请求哪些参数,需要获取什么数据。

DataBase ===> pojo ===> Mapper.xml ===> dao ===> Service ===> controller ===> Jsp

4.3实现基本原理

SSM框架是Spring MVC ,Spring和MyBatis框架的整合,是标准的MVC模式,将整个系统划分为表现层,Controller层,Service层,Dao层;

Spring MVC负责请求的转发和视图管理,负责controller和jsp的,也就是视图层;

Spring实现业务对象管理,提供对象的,利用其IOC与AOP贯穿于整个项目。为各个层之间提供对象创建和注入,解耦合。比如我的这个项目提供了dao层的对象;

MyBatis作为数据对象的持久化引擎,负责数据库的连接,与Spring整合后,配合Spring可提供dao层对象。



   ** 持久层:Dao层(mapper)**

    Dao层:Dao层主要是做数据持久层的工作,负责与数据库进行联络的一些任务都封装在此,Dao层的设计首先是设计Dao的接口,然后在Spring的配置文件中定义此接口的实现类,然后就可在模块中调用此接口来进行数据业务的处理,而不用关心此接口的具体实现类是哪个类,显得结构非常清晰,Dao层的数据源配置,以及有关数据库连接的参数都在Spring的配置文件中进行配置。

    **业务层:Service层**

    Service层:Service层主要负责业务模块的逻辑应用设计。首先设计接口,再设计其实现的类,接着再在Spring的配置文件中配置其实现的关联。这样我们就可以在应用中调用Service接口来进行业务处理。Service层的业务实现,具体要调用到已定义的DAO层的接口,封装Service层的业务逻辑有利于通用的业务逻辑的独立性和重复利用性,程序显得非常简洁。

    **表现层:Controller层(Handler层)**

    Controller层:Controller层负责具体的业务模块流程的控制,在此层里面要调用Service层的接口来控制业务流程,控制的配置也同样是在Spring的配置文件里面进行,针对具体的业务流程,会有不同的控制器,我们具体的设计过程中可以将流程进行抽象归纳,设计出可以重复利用的子单元流程模块,这样不仅使程序结构变得清晰,也大大减少了代码量。

    **View层:**

    View层与控制层结合比较紧密,需要二者结合起来协同工发。View层主要负责前台Jsp页面的表示。

5

页面展示

5.1登录页面

图片

5.2注册页面

图片

5.3主页

图片

5.4展示页面

图片

5.5新增页面

图片

5.6删除页面

图片

5.7修改页面

图片

6

注意

1.MySQL 版本5.0以上与8.0以上配置有些许差异,需要调整,根据 jdbc.properties 文件中的提示,选择合适的数据库驱动 driver;
# MySQL 5.Xjdbc.driver=com.mysql.jdbc.Driver# MySQL 8.Xjdbc.driver=com.mysql.cj.jdbc.Driver
2.运行项目前提前配置好MySQL数据库、Tomcat服务器、IDEA maven依赖库;



3.本系统仅实现简单功能,仅为更好理解SSM原理,需进一步完善更多功能及健壮性。

7

源码

关注微信公众号:Java烂笔头

回复:SSM项目****

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
收藏 人收藏

    评论

    相关推荐

    SSM框架-Maven-09-版本管理

    ssm
    电子学习
    发布于 :2023年01月07日 19:43:46

    一文解析SpringBoot2整合SSM框架

    SpringBoot2整合SSM框架详解
    发表于 06-09 16:43

    基于JAVA与SSM的移动电源租赁系统的设计

    技术:Java、SSM等摘要:本文论述了一个基于JAVA语言、SSM(Spring+SpringMVC+MyBatis)框架的移动电源租赁系统的设计原理、设计思想及具体的实现过程,对在
    发表于 01-03 07:08

    Java、SSM移动电源租赁系统的设计与实现

    技术:Java、SSM等摘要:本文论述了一个基于JAVA语言、SSM(Spring+SpringMVC+MyBatis)框架的移动电源租赁系统的设计原理、设计思想及具体的实现过程,对在
    发表于 01-12 12:43 10次下载
    Java、<b class='flag-5'>SSM</b>移动电源租赁<b class='flag-5'>系统</b>的设计与实现

    基于SSM的学生管理系统

    一个基于SSM的学生管理系统 : 代码注释详细,逻辑结构清晰,对于初学 SSM 的同学非常具有参考,及学习价值哟 !
    的头像 发表于 02-28 14:17 930次阅读
    基于<b class='flag-5'>SSM</b>的学生<b class='flag-5'>管理</b><b class='flag-5'>系统</b>

    基于SSM框架的毕业设计管理系统

    系统采用B/S模式,用到的编程语言有Java、JavaScript和JSP,数据库采用MySQL 5.7,服务器则用的Apache Tomcat 9.0。前端页面的编写基于bootstrap,整个项目基于SSM框架
    的头像 发表于 02-28 14:20 1671次阅读
    基于<b class='flag-5'>SSM</b><b class='flag-5'>框架</b>的毕业设计<b class='flag-5'>管理</b><b class='flag-5'>系统</b>

    基于SSM框架的酒店后台管理系统

    前端实现采用了layui-Qadmin模板;整体简约大气,使用方便快捷。后端实现采用SSM框架
    的头像 发表于 02-28 14:22 986次阅读
    基于<b class='flag-5'>SSM</b><b class='flag-5'>框架</b>的酒店后台<b class='flag-5'>管理</b><b class='flag-5'>系统</b>

    基于SSM框架的新闻管理系统

    基于SSM框架的新闻管理系统;实现 登录 、 注册 、 新闻内容 、 类别 、 评论 、 个人信息 、系统管理等功能 ;可继续完善增加前端等
    的头像 发表于 02-28 14:37 1353次阅读
    基于<b class='flag-5'>SSM</b><b class='flag-5'>框架</b>的新闻<b class='flag-5'>管理</b><b class='flag-5'>系统</b>

    基于SSM的学生管理系统

    一个基于SSM的学生管理系统 : 代码注释详细,逻辑结构清晰,对于初学 SSM 的同学非常具有参考,及学习价值哟 !
    的头像 发表于 02-28 15:13 1075次阅读
    基于<b class='flag-5'>SSM</b>的学生<b class='flag-5'>管理</b><b class='flag-5'>系统</b>

    搭建ssm框架的详细流程

    随着互联网的快速发展,Web应用程序的开发越来越受到重视。而在Java开发领域,SSM框架(Spring + SpringMVC + MyBatis)已经成为非常流行的一种开发架构。SSM框架
    的头像 发表于 12-03 14:52 3422次阅读

    SSM框架在Java开发中的应用 如何使用SSM进行web开发

    SSM框架,即Spring、SpringMVC和MyBatis的整合,是Java Web开发中常用的技术栈。它通过分层架构,实现了视图、控制、业务逻辑和数据访问的分离,提高了代码的可维护性和可扩展性
    的头像 发表于 12-16 17:28 465次阅读

    SSM框架的优缺点分析 SSM在移动端开发中的应用

    SSM框架的优缺点分析 SSM框架,即Spring、Spring MVC和MyBatis的整合,是当前比较流行的Java开源框架之一。以下是
    的头像 发表于 12-16 18:18 452次阅读

    SSM框架的性能优化技巧 SSM框架中RESTful API的实现

    SSM框架的性能优化技巧 SSM(Spring + Spring MVC + MyBatis)框架的性能优化是提升Java Web应用性能的关键环节。以下是一些常用的性能优化技巧: 使
    的头像 发表于 12-17 09:10 157次阅读

    SSM与Hibernate的整合使用

    作为Java持久化框架的代表,常被整合到SSM框架中。 SSM框架简介 SSM
    的头像 发表于 12-17 09:14 162次阅读

    SSM框架的源码解析与理解

    SSM框架(Spring + Spring MVC + MyBatis)是一种在Java开发中常用的轻量级企业级应用框架。它通过整合Spring、Spring MVC和MyBatis三个框架
    的头像 发表于 12-17 09:20 252次阅读