基于SSM框架车辆违章管理系统的设计与实现 | |||||
年级专业 | |||||
学 号 | 、 | ||||
开题报告(立题依据、研究的主要内容及预期目标、研究方案、论文进度安排、主要参考文献) 1立题依据 1.1毕业论文(设计)的研究背景 随着经济的发展,社会的进步,人们的健康意识明显提高。各种急危重症、意外伤害时有发生,威胁着人们的生命和健康, 意外伤害已成为危害人类健康的全球性公共卫生问题。我国每年因意外伤害死亡的患者约70万人,是居民死亡原因的第4位或第5位,也是1~34岁人群的首要死亡原因。公众急救对降低突发事件和灾难发生时的伤残率,提高生存质量起到重要作用。我国近年来在急救知识普及方面有了较大的发展,急救使患者能得到及时、有效的现场救援,为患者赢得宝贵的抢救时机,提高抢救成功率。在一些经济发达的国家,公民的急救水平甚至是衡量城市生活水准和社会发展水平的标志。 本系统开发设计思想是基于北斗系统的高准确性急救救护信息发布以及就近通知救护人员到现场进行急救。 尽量采用现有软件环境,及先进的管理系统开发方案,提高系统开发水平和应用效果的目的;系统应符合国家对急救救护平台的规定,满足日常管理的需要,并达到操作过程中的直观,方便,实用,安全等要求;系统采用模块化程序设计方法,这样既便于系统功能的各种组合,又便于未参与开发的技术维护人员补充,维护;系统应具备数据库维护功能,及时根据伤患和医务人员需求进行数据的添加,删除,修改等操作。 该内容主要是竞赛报名和管理用来满足有突发疾病的高危患者,和拥有急救救护知识的医务人员的需求,旨在建立一个拥有高准确位置信息的急救救护平台。应用所学的有关知识,更深入地学习SSM企业框架搭建和安卓开发技术,将所学的书面知识和实际应用结合起来,以达到学以致用的目的。 1.2毕业论文(设计)研究的目的和意义 本课题的主要目的是利用基于SSM的企业框架,开发出一套基于北斗的公益性急救救护平台,使用Spring Boot基础服务框架搭建的基于Spring + Spring MVC + MyBatis等框架开发后端程序,这个是继SSH之后,目前比较主流的JavaEE企业级框架,适用于搭建各种大型的企业级应用系统。在数字化、网络化和信息化时代,建立一个高效、完善基于北斗的公益性急救救护平台就显得非常重要。本文设计和实现的急救救护系统,平台基于北斗定位卫星和LBS自动定位技术,破解电话报警的难题,使得位置确定更为精确;伤患者通过本平台快速精准发出求救信息,快速通知附近的加盟救护人员,使伤患者及时得到施救;根据本平台的LBS自动定位,规划出更合理的路线,迅速抵达救护现场;同时,得益于APP的便捷性,使得求救轻松完成本课题的意义在于解决在救护车到达事发地点之前的这一段抢救真空期内派出施救志愿者,并能在急救“黄金时间”内,即在4分钟之内赶往事发地点,先给予伤者进行急救,直到“120”到达现场接手救援工作。提高患者生存几率,减少急救等待过程中的死亡率,不断提高医疗救治能力和应急救援水平,促进基本公共卫生服务均等化。 基于北斗的公益性急救救护平台是在此目标下孕育而生的一款由急救呼叫响应、急救视频教学、医疗常识学习、公益筹款中心共四大功能组成的APP。通过基于北斗的公益性急救救护平台客户端软件,可安装APP于智能手机、平板电脑、智能手表等具有移动通信功能的设备。 1.3毕业论文(设计)研究的国内外现状 随着4G、5G无线技术的飞速发展,移动通信技术对于急救救护领域起到关键作用,救护人员可以快速到达伤患者身边进行救助。党的十八届四中全会对全面推进法治建设作出部署,提出以民为本、立法为民的立法理念,对全面推进法治政府、法治社会建设提出要求。各地人大开始启动院前急救立法工作。北京市人大立法充分体现为公民立权、为政府立责的理念,坚持以人民为中心的发展思想,把保障公民的生命健康权益、强化政府在院前急救事业发展中的服务与责任,作为关键内容。通过调查得知,我国院前急救体系面临的以下困境:急救资源配置不合理,“黄金时间”无保证;院前急救网络覆盖不合理;急救车设备配置不完善;应急队伍和应急能力不健全。 国内研究现状:根据国家统计局2018年发布的年度统计报告显示,全国的医师人数逐年增涨:卫生技术人员已增涨至950万人,其中执业医师和执业助理医师358万人(是指通过执业医师考试的和前面直接发执业证的总人数)。据国家统计局2018年发布的公报显示,我国社区卫生服务中心(站)数量也不断增长,全国已设置社区卫生服务中心已超过35000个,社区卫生服务站近12000个。以社区卫生服务中心为主,社区卫生服务站为辅,医疗诊所、医务室为补充的社区卫生服务体系正在不断地扩张,医疗人员将成为本平台潜在的施救者。目前互联网医疗近几年在国内有了一定程度的发展,出现了许多具有代表性的互联网医疗形式,这些平台的主营业务都分为线上和线下两部分,线上主要是提供医疗健康咨询、在线诊断、疾病评估、在线挂号等,线下是通过线上的服务引导就医,转化为实际客户。但是,这些平台大部分采用收费盈利模式,或者不完全免费运营模式。经过调查研究发现,目前为止线下急救服务的平台尚不存在。基于北斗的急救救护平台主要业务是现场的急救施救,平台完全免费,且为“纯公益急救平台”。在市场上为首家,目前没有完全对标的参照物,项目面对的是一片蓝海。 国外研究现状:在国外,基础结构之一是区域调度指挥中心。每个区域单独拥有一个调度中心,负责管理所有的EMS活动。在一些区域,如汉堡,他们与消防部门共用一个调度中心。另一些区域,如巴伐利亚,消防和急救的调度中心是分开独立的。多年来,EMT的正规教育并不存在。许多地方系统依靠志愿者以及青年人作为代替军队服兵役的一种征召形式。直到5年前,EMT的培训才成为专业化。1989年,通过了一个联邦政府法律,EMT需要经过2年的培训课程并通过国家级的考试。⑷这二年包括一年的医助学校以及一年的工作培训。目前,还很难对这一法律是否能达到预期的质量的提高做出估计,因为现在多数的EMT是在这项法案通过前拿到的执照。 2 相关技术研究及介绍2.1 安卓软件开发简介安卓系统是一种基于Linux内核的自由及开放源代码的操作系统。安卓系统是现在移动操作系统市场中最为主流的系统,用户量巨大,所以课题选中该系统开发软件作为平台的前端。 Android开发的主要有四大组件。Activity: 用于表现功能,就是软件中提供的各个界面,用于用户操作。Service:后台运行服务,不提供界面呈现,其中就使用了后台服务不断定位,确保救护人员可以知道患者所在位置。BroadcastReceiver:用于接收广播,软件使用该组件进行通知附近救护人员。Content Provider:该组件可以让应用和应用之间共享数据。在安卓系统上开发具有一下优势首先就是其开放性,所以用户基数大,应用人群广。安卓开发技术成熟,拥有丰富的库,大大提高我们开发的效率。 图2-1 MVC 组件的工作原理 2.1.1 Web前端技术在安卓App中嵌入了WebView控件,可以展示Web页面,部分界面为Web界面,所以在这介绍平台中使用的Web技术。 (1)Vue框架:Vue 是可以编写自底向上的逐层Web应用。Vue 是只视图层框架,不仅易于上手,还可以方便与第三方库和现有项目整合。当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动[4]。 (2)webpack:这是一个JavaScript的静态模块打包器。当 webpack 处理应用程序时,它可以递归构建出一个依赖关系图,其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个捆绑包。 配合Vue使用,用于打包使用单文件组件,实现规模化组件。 (3)Axios:该库可以在浏览器中创建 XMLHttpRequests对象,可以轻松转换请求数据和响应数据,还可以自动转换JSON数据,在Vue上使用Axios进行Ajax请求。 (4)Nginx:一个高性能的HTTP和反向代理web服务器,有高效的性能,Web前端使用该web服务器部署。其特点是占有内存少,并发能力强。 2.2 后端技术2.2.1 Spring Boot框架Spring Boot是即SSM整合框架后的全新框架,可以用来快速创建Spring应用以简化应用开发过程。该框架使用了新的方式来进行代替XML配置,可以使开发人员不再需要重复定义样板化的配置。 由于之前的传统SSM项目因为配置繁琐,导致开发较为困难,而全新的Spring Boot框架不仅继承了Spring框架原有的优秀特性,而且还通过极度简化的配置方式来进一步简化了Spring应用的整个搭建和开发过程。还可以使得依赖包的版本冲突,以及引用的不稳定性等问题得到了很好的解决[4]。 Spring Boot具有一下特点: (1)可以快速构建出Spring应用程序,可以基于Maven或着Gradle打包工具,创建可执行的JARs和WARs。 (2)内嵌Web容器,还可以轻松切换为Jetty等Servlet容器。 (3)绝对没有代码生成,不需要XML配置 图2-2 Spring Boot系统架构 2.2.2 Spring技术Spring框架是一个轻量级开源的企业级应用开发框架,作为降低企业级应用开发系统各层复杂度基于Java SE/EE应用一站式的解决方案。Spring由IoC(控制反转机制)和AOP(面向切面编程)两大核心部分组成,能无缝整合其它各个模块,并能使各个模块之间能有效的协作完成所需的功能。Spring弥补了EJB开发繁琐的缺陷,采用POJO的方式,不仅能有效地管理各组件,还增强代码的健壮性和提高代码的可移植性。且使用Spring管理的组件都有低耦合、高内聚的特点[4]。Spring框架主要的优势有: (1)Spring容器可以管理Bean的依赖关系。Spring根据上下文配置文件来创建 及组装对象间的依赖关系,若各对象之间需要修改、解除依赖关系,只需修改配置文件,就不需要像传统方式必须修改源代码,重新编译部署,这样极大的影响开发效率。 (2)支持面向切面编程。通过提前预编译的方式,在切点运行期间可以动态灵活的实现程序功能。例如,切面编程方式能将日志记录管理、权限管理、性能运行统计无耦合的从业务逻辑中分离出来。 (3)具备高集成特性。Spring能与多种第三方优秀框架无缝集成,如数据库访问框架(Hibernate、MySql、JPA)、Web层架构(Struts、JSF)及缓存框架(Redis)。 (4)方便管理数据库事务。采用Spring对数据库事务进行管理,只需获取连接DateSource执行SQL,其它交给Spring来负责管理,并且Spring还提供了一套应用于数据库的JDBC操作访问模板来方便对数据库的访问。 图2-3 Spring 框架组件结构图 2.2.3 MyBatis-Plus框架MyBatis 是一款操作数据库的ORM框架,支持自定义 SQL、存储过程以及高级映射。MyBatis 简化了大多数的 JDBC 代码以及设置参数的方式获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO为数据库中的记录[4]。 MyBatis-Plus是一个 MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。并且支持任何能使用 mybatis 进行 crud,数据库方面支持标准 sql 的数据库 MyBatis-Plus具有一下特点: (1)无侵入:只做增强不做改变,引入它不会对现有工程产生影响。 (2)损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作。 (3)强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求。 (4)支持 Lambda 形式调用:通过 Lambda 表达式,方便的编写各类查询条件。 (5)支持主键自动生成:支持4 种主键策略,可自由配置,完美解决主键问题 (6)内置分页插件:基于 MyBatis 物理分页,开发者无需关心具体操作,配置好插件之后,写分页等同于普通 List 查询 图2-4 MyBatis-Plus框架结构 3 需求分析3.1 功能需求分析科技的高速发展,更方便的交通条件,也给予人们更方便的生活,但也伴随着路上行车的增多,导致道路更加堵塞。使有突出情况的时候,110救护车会在路上走更久,这样就会导致可能错-过最好的抢救时间。但是这时候如果有具有专业知识的救护人员先到现场进行简单的抢救,就可以尽可能的给救护车到来时抢救成功的几率大大提高。 该急救救护平台就是为了应付这种情况下的场景而开发的,平台具有移动端APP,主要用户角色分为普通用户(患者)和加盟救护人员,普通用户有发起急救请求的功能,如果用户突发疾病,就可以使用平台软件发起急救通知,附近救护人员就会收到通知,同时导航赶来先进行急救工作。在救护人员前往现场过程中,患者可以看到救护人员的位置,可以大致看到救护人员还有多久到达现场救助自己。救护车到来之后救护人员需点击软件上按钮表示已经完成救助,到此完成了整个急救救护的流程。 根据提高用户操作易用性及用户良好体验原则,设计开发的基于北斗的急救救护平台主要具有以下几点功能: (1)注册、登录功能。包含有普通用户注册,急救人员注册,使用系统之前必须登录系统,登录时会在后台数据库校验用户名称和加密后的密码,登录成功才可使用该平台。不同用户在系统中的操作职权都不尽相同,普通用户(伤、病患者)只能发起救护和查看相关急救资讯。急救人员登录后可接收附近伤患者发出的救护呼救请求。 (2)急救响应功能:当患者需要急救时,点击APP中的呼叫按钮,系统将以用户为中心,向最近的紧急救援人员发送求救信号。救援人员收到遇险信号后,系统利用北斗卫星定位功能定位患者的具体位置,规划最佳路线。打开三方导航软件(支持百度地图、高德地图和高德地图web版本),救援人员可以在最佳急救时间[5]内以最快的速度到达现场[5]。 (3)医疗常识进行学习:软件内提供基本医疗常识我们学习,展示一些常见医疗小常识。在发生灾害或意外事故时能及时自救和互救,有效地挽救自己或他人的生命。 (4)急救视频教学功能:在软件中给用户提供常见症状的简单急救视频,以视频的形式可以更加形象化的教学视频指导。 3.2 可行性分析应移动互联网时代的发展,急救救护平台乘着该时代的顺风车,致力于急救场景下的急救需求。并且该平台是公益性的,可以免费的提供给普通用户使用,对于在该平台注册的医护人员,可以在当地红十字会招募,省去较少的运营费用。 基于北斗的公益性急救救护平台由本作者独立开发,在经济的投入上微乎其微,可忽略不计。后续投入实际应用时,只需定期对系统进行维护升级就能保持系统的持续运行。总体的经济开销都不大,所以在经济方面是可行的。 从技术方面出发,该平台在开发需求硬件设备方面,考虑到运行中消息通知的实时性对性能的苛刻性要求,服务器硬件应选择稍好点的。开发技术方面,该系统采用Spring Boot框架技术设计开发,结合该框架技术的特性,对系统的调试相对简单,且该开发框架具备易维护性及扩展性强的特点,还能结合客户前沿性需求不断创新,扩展更多业务功能,所以在开发技术方面是成熟可行的。 3.3 非功能需求分析一个完整的系统除了完善主要的业务逻辑功能外,还需要考虑非功能性的完善,这关系到系统的整体质量,也间接影响着系统功能性完整。系统产品只有将功能需求和非功能同时满足系统开发和使用的质量标准需求,才使用户留下好的印象,提高用户体验感,软件产品才能有更好的发展前景。本课题系统对开发系统的非功能需求有: (1)高安全性。由于系统采用Spring Boot企业级开发框架技术,降低了代码的耦合性,数据储存于数据库中,并且使用了数据库行级约束,竟可能在数据库级别也可以限制数据插入,数据参数不易被篡改、破坏、丢失,就算参数数据受到破坏也不会影响系统的运行。 (2)可维护性。该系统采用前后端分离设计模式设计开发,分开移动端和服务器端单独开发,层次明了清晰,对后期的维护开发十分方便。 (3)稳定性:系统所用开发技术成熟,并且有严谨的业务逻辑,框架结构设计合理。只要用户操作规范合理,在网络稳定的情况下,页面响应时间不超过2秒。 (4)简便性:采用Antd设计的后台管理界面,布局结构合理,功能完善齐全,页面设计简要明了,整体格局风格统一,简单易操作,能给用户提供良好的用户体验。 4 毕业论文(设计)进度安排1.2020年10月26日-11月4日(第七学期第7~8周):下达任务书。 2.2020年11月5日~2020年12月6日(第七学期第8周~第12周):查阅与课题相关的文献及资料,撰写并提交开题报告。 3.2020年12月7日~2021年1月24日(第七学期第13周~第七学期第19周):完成本课题的需求分析,功能设计。 4.2021年1月24日~2021年3月1日(第七学期第19周~第八学期第1周):开展软件设计开发与调试,开始撰写毕业设计(论文)初稿。 5.2021年3月2日~2021年3月14日,(第八学期第1周)工作进度和质量检查,处理有关问题。 6.2021年3月15日~2021年3月21日(第八学期第3周):中期检查,撰写并提交中期考核表。 7.2021年3月22日~2021年4月25日(第八学期第4周~第8周):完成软件设计开发与测试,对毕业设计进行修改、完善、论文定稿。 8.2021年4月26日~2021年5月2日(第八学期第9周)学术不端行为检查;提交最终毕业论文和承诺书、学术不端行为检查结果“简洁版”,准备答辩。 9.2021年5月3日~2021年5月16日(第八学期第10周~第11周):规范审查、指导教师和主审老师评阅。 10. 2021年5月17日~2021年5月23日(第八学期第12周):进行小组答辩、复审答辩,确定优秀论文。 5主要参考文献 [1]明日科技.Java从入门到精通.第五版.清华大学出版社.2019 [2]罗如为. Java Web开发技术与项目实战.水利水电出版社.2019 [3]李刚.疯狂Java讲义.第四版.电子工业出版社.2018 [4] 汪文君.Java高并发编程详解.机械工业出版社.2018 [5]汪云飞.JavaEE开发的颠覆者.电子工业出版社.2016 [6]Cay.S.Horstmann.Java核心技术.第十版.机械工业出版社.2016 [7] 陈强.精通Java开发技术 . 清华大学出版社.2014 [8] 黄俊.Java程序设计与应用开发.第二版.机械工业出版社.2014 [9] 王爱国.Java面向对象程序设计. 机械工业出版社.2014 [10] 陈云婷.21天学通Java. 电子工业出版社.2014 [11] R.J(Bud)Bates. GPRS:General Packet Radio Service .McGraw-Hill, 2003, . [12] Cameron,J.R. JSP & JSD the Jackson approach to software development .Silver Spring MD: IEEE Computer Society Press, 1983, . | |||||
指导教师意见: 签名: 年 月 日 | 是否可以进入设计(论文)研究: 教研室主任签名: 年 月 日 | ||||