版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要为了满足互联网在线问诊的需求,该系统用SpringBoot设计并实现了一个基于SSM框架的在线问诊系统。系统整合了SpringBoot在开发方面简便的优势以及SSM框架的稳定执行过程,系统使用MySQL为主数据库,以阿里云OSS为文件存储。前台则是使用JQuery和Bootstrap创建并构成页面,使用Thymeleaf作为模板引擎,用于动态得填充数据。后台采用SpringBoot+SSM作为整体架构,通过清晰分层逻辑,方便了代码维护,使得系统更高效快捷,运行稳定。用户易上手,交互体验良好。此系统可以在线上为病人提供足不出户的问诊服务,利用互联网来进行在线问诊能够让用户通过系统端进行更加便捷式问诊,还能为医院中各门诊的管理工作提供更加有效的运行条件。此论文详细解释了此系统在开发使用中的详细功能,并按照JavaEE的分层模型给出了系统的实现过程。关键词:在线问诊系统;SpringBoot;SSM;MySQL1.绪论1.1课题背景伴随着时代的快速发展,互联网技术与医疗领域相融合。而在互联网的大数据时代背景下,各类数据出现爆炸式的增长。如何在这个背景下,利用互联网和这些相关的数据进行辅助疾病诊断,并为用户进行个性化的,符合用户需求的医生进行推送,也成为了当下互联网行业的一个重要的问题。所以,在线问诊系统的开发更能够贴合现代化技术,提供更加多元化的系统服务板块。医疗领域和互联网的融合正是趋势所向,利用互联网来进行在线问诊能够让用户通过系统端进行更加便捷式问诊,还能为医院中各门诊的管理工作提供更加有效的运行条件。1.2课题研究目的及意义得病是多数人一生无法避免的事,但是有些时候我们不方便或者来不及去医院看病,众所周知,医院不仅人数多,而且浪费时间和精力,因此,我们需要更简单、更快捷解决问题的方法。正处于移动互联网高速发达的时代,我们则可以采取更加有效的方式,即在线问诊。一方面,在线问诊系统顾名思义,可以在用户身体不舒服或遇到需要咨询的身体健康问题,可以通过在线问诊向医生自行咨询,或者直接选择指定医生,然后预约留言,就可以准备接受诊疗,可为大多数人提供给莫大的方便和快捷。另一方面,在线问诊平台对于日常小毛病就很多的患者来说无疑是一个更加方便的平台。人们经常在身体出现某些小问题的时候,阻止自行的心,不仅不能问题解决,还会给自己加重心理负担。而在线问诊平台提供了健康咨询的功能,这则使得一些用户可以获得更加顺心的体验。况且,面对2020年初新冠疫情的爆发,也体现出了线下问诊的局限性,面对线下问诊的诸多不便,在线问诊发挥出了其显著的功效。因此,开发一个在线问诊系统显得尤为重要。1.3国内外研究现状1.3.1国外现状由于疫情影响,国外的在线问诊在日益发展,美国CVS也在2020年12月26日联合Teladoc等公司出手在线问诊。而从有关互联网医疗的文献检索来看,2018年至2020年2月间,核心期刊发表文献就达285篇,可见在线医疗发展前景广阔,而在整个互联网医疗中,在线问诊可谓其门户型产品,故笔者选择了互联网的线上问诊平台进行开发和实现。1.3.2国内现状时至今日,对于线上问诊方面的研究和实现已经创造了很大的成果,在2015年底,乌镇互联网医院作为全国首家互联网医院在中国乌镇成立,此医院的成立开创了在线电子处方、电子病历、延伸医嘱共享等滥觞。在线医疗行业也在互联网的发展之下给人们的生产生活方式带来了巨大的冲击。截至2020年6月,我国网民数量就已达到9.40亿,人们对互联网的接受和依赖程度将持续加强,互联网医疗的普及程度将会持续增加。1.4系统特性此次疫情的爆发,也体现出了线下问诊的局限性,面对线下问诊的诸多不便,在线问诊发挥出了其显著的功效。因此,开发一个在线问诊系统显得尤为重要。在线问诊系统中,医生和患者可以达到更加灵敏的即时沟通的效果,整个系统的设计也可以更加贴合地满足用户需求。为了保证用户信息的安全性,系统引入了身份认证的功能。经过测试表明,系统使用简便、安全、方便维护、易于拓展,可以有效地填充在线医疗行业的空缺。本文章主要面对的是互联网医疗的切实需求,且充分了解到本系统的可维护性以及开发效率等问题,最后确定使用SpringBoot对该系统进行开发,且利用SSM框架组对此此系统进行分层的管理,框架与框架精确地负责处理所属层的业务。两层之间解耦合。使得系统摆脱了难维护的弊端。1.5系统的发展前景及影响随着互联网的崛起和持续发展,科技与创新能力在持续升高的大环境中。“互联网+”的模式已经在各个行业之间广泛的使用了。2018年春,国务院办公厅印发文件,明确要求完善和推动“互联网+”应用服务体系[2]。2020年1月,随着新冠疫情席卷而来,也令互联网给医疗领域带来了新的机遇和挑战,在国家的扶持下,其加速发展,使得以在线问诊为代表的互联网医疗不断地迭代发展。不可不说的是,随着5G技术的发展和全行业的覆盖,互联网医疗等方面也在国家的大力支持下全速发展。从医学领域“互联网+”的发展的现状上来看,我国已初步走向实际实施。尽管要大规模临床的应用还有很长的路要走,但随着建立不断发展的智能和其他技术的高级数据库以及系统和功能更新,且在国家政策的积极管理下,提供以在线问诊为代表的智能医疗服务之日屈指可数。2.相关技术介绍2.1SpringBoot简介SpringBoot优化和改善了Spring配置依赖耗时耗力,不支持分布式的问题,依赖于约定优于配置的理念[3],可以让开发人员不必再将精力用在配置问题上,从而在一定程度上极大地提高了开发效率并缩短了项目周期。2.2SSM简介SSM是一款由Spring和MyBatis整合而成的开源框架,其在近几年的开发中运用十分广泛,在web项目开发中表现出色。其中Spring是一个轻量级但有很多扩展功能的框架,我们主要使用到的是它的控制反转(IOC)和面向切面(AOP)。MyBatis是通过数据库的查询、存储过程的使用和高级映射的应用[4],对数据进行持久化操作。通过对象关系映射关系将Java对象与数据库中的数据记录进行相互转换,通过使用开源框架配置文件中的引用和项目中的依赖包的导入,即可将三个框架整合起来实现完整的前后端通信流程[5]。2.3前端技术介绍2.3.1JQuery的具体作用前后端的交互模式为人们所熟知的AJAX,起到辅助功能,使得辅助开发Web的工作人员能够更加专注于功能的设计,更容易创建出功能,信息,且高效的网站。如果是为了添加丰富动态效果,并为了实现交互的活动,用户必须向开发人员提供反馈信息,以此来提供视觉上的信息反馈,并以此方便制作简单且新视觉的工具包。响应体验的一些复杂的动态操作,当然前提必须是可控的,如果设计得再强大再优秀几乎没有瑕疵,也不会得到用户的认同。JQuery会提供多样的页面问题事件的处理方式。而且不会使代码出现紊乱的情况发生。同时会消除掉浏览器不一致性的问题。当用户需要改变页面内容时,JQuery会使用一些简单少量的程序,不仅仅是简单的外观能够更深一层得改变其范围变化。它能够对列表进行简单的排序,同时可以改变文本的内容,对文档的内容进行编排和重写。这些仅仅只需要简单的API。2.3.2Vue的简介Vue.js是简单的框架,其目的是给用户提供一套构建界面。Vue是自底向上的设计模式。与其他的框架存在一些不同,Vue注重视图层,且简单易学,容易上手,同时进行项目整合和与其它库进行连接时,不会出现乱码情况。Vue.js会通过简便的API同时会实现数据绑定的响应。并且它本身不是一个整体的框架,同时会集中于视图层,所以它是很容易掌握并可以深入研究。与其它库的整合以及工具的使用,都为开发者和用户提供了方便。3.需求分析3.1设计目的按照需求调研所整合的信息,此在线问诊系统需要包含如下几个基础的功能:1.能够实现普通用户的登录,注册,查询和修改个人信息、病历,查看就诊记录,与医生会话,按照疾病和相关描述检索医生信息,按科室分类显示医生信息,按照医院查询显示医生信息,查看医生发布的健康咨询,对不在线的医生留言等功能;2.能够实现医生的登录,注册,查询和修改个人信息,可以与病人建立会话,发布健康咨询信息,查看患者留言等功能;3.超级管理员的增删改查,管理系统等功能。3.2可行性分析3.2.1技术可行性此在线问诊系统使用了Java语言作为主语言,后端使用SpringBoot+SSM框架,前端采用BootStrap响应式框架+jQuery+Thymeleaf作为页面设计以及前后端交互。采用IDEA+MySQL+阿里云OSS作为基本的开发工具进行系统的开发。IDEA作为一款集成开发工具,有着“最强Java开发工具”的称号,关系型数据库MySQL轻量方便,阿里云OSS作为一款阿里云的对象存储产品,方便存储图片文件,节省了项目的服务器资源,方便管理。Java语言作为面向对象的一种语言,非常适合用于Web开发,可以方便地实现前后端的交互。3.2.2经济可行性系统程序的开发都是基于它的利用价值的,此在线问诊系统的开发也是在经过大量的需求调研之后,确定此系统是可以开发并投入使用的,在项目建成后,可以通过扩大宣传,获取用户,利用用户基数增大后获取的广告接入收入,可保证网站运营方面的开支。硬件方面可以先租用服务器,减少硬件的开支。因此在经济上是可行的。3.2.3操作可行性后台简单易用,方便管理,界面设计简洁大方,容易上手。同时对于开发者的工作量不大,具备一定的技术能力就可以实现此在线问诊系统的开发。用户在使用系统时可以做到上手即用的程度,对于新手比较友好。4.系统设计4.1功能模块设计通过对此在线问诊系统进行需求分析,本系统主要分为用户管理、健康咨询、在线问诊、离线留言等,这四大功能模块。以及管理员,医生,用户三种角色权限。经过分析可知,此系统的系统结构图如图4.1所示。图4.1系统结构图4.2用例图建立用例图的结构包含管理员、医生,用户并且系统封闭的一边用例和参与者之间的关系。在在线问诊系统的主流业务可以看出系统的主流服务包括问诊信息、健康咨询信息病历信息以及留言信息的处理等服务方式。如图4.2系统用例图所示。图4.2系统用例图4.3数据库设计数据库在系统程序的开发中占有举足轻重的地位,在此在线问诊系统中,数据库使用的是关系型数据库MySQL。用于系统数据存储和调用。4.3.1数据库设计原则明确应用程序的性质,应用程序主要包括两种类型,一种偏向于关注增删改查的操作,偏重于事务处理。一种是偏向于数据分析和趋势预测的分析型程序。根据数据库可得出简易的流程图。如图4.3所示。图4.3系统登录流程图4.3.2数据库概念模型根据数据库表的设计,将各个模块进行具体的分析,科室与医生之间属于一对多的关系;医生与健康咨询实体之间属于一对多的关系;医生与用户之间属于一对多的关系;用户与健康咨询实体之间属于一对多的关系;用户与离线留言之间属于一对多的关系。由此分析可得出E-R图,图4.4为系统实体关系E-R图。图4.4系统实体关系E-R图4.3.3数据库概念结构设计通过分析,从上述E-R图中我们可以得到以下实体:用户信息表(用户编号、用户密码、用户名、性别、出生年月、地址、身份证、电话、头像、种类、注册时间、更新时间);健康咨询表(问题短标题、问题名称、问题详情、创建时间、创建人编号);文章表(用户编号、文章名称、图片缓存、文章内容、详细内容、创建时间、创建人);问诊表(序号、用户名称、用户编号、消息类型、创建时间、对象编号);评论表(序号、用户编号、评论主题、评论内容、类型、创建时间、更新时间、状态);新增栏目表(序号、栏目名称、创建时间、栏目简介);病历表(序号、用户编号、编号、病历名称、描述、图片、病历详情、创建时间、状态);科室表(编号、类别名称、图片、描述、发布时间、更新时间);答疑表(编号、用户编号、问题编号、回答内容、创建时间、状态);4.3.4数据库逻辑结构设计通过上述的概念结构可得出数据库所有用例之间的关系表如下所示:系统用户信息表(users)中包括所有的用户信息。如表4.1所示:表4.1系统用户信息表列名数据类型最大长度注释主键idint18编号PRIpswchar18密码namechar18用户名Sexbool1性别birthdate0出生年月wechatchar64地址idcardchar18身份证telint20电话imagechar512头像typeint18种类creatdatechardate注册时间updatechardate更新时间健康咨询表(question)中含有患者提出的关于健康方面的问题。如表4.2所示:表4.2健康咨询表列名数据类型最大长度注释主键idint18序号PRItitlevarchar255问题短标题questiontext0问题名称questionsint18问题详情creatdatevarchar255创建时间useridint18创建人id文章发布表(news)中含有医生或者管理员对健康知识的宣传文章。如表4.3所示:表4.3文章发布表列名数据类型最大长度注释主键idint18序号PRIuseridint18用户idtitlevarchar255文章名称imagevarchar255图片缓存descriptionvarchar255文章内容texttext0详细内容creatdatevarchar255创建时间clickint18创建人问诊表(msg)中含有医生和患者交流的所有的消息记录。如表4.4所示:表4.4问诊表列名数据类型最大长度注释主键idint18序号PRIusernamevarchar255用户名称useridint18用户idmsgtext0消息typeint18消息类型creatdatevarchar255创建时间toidint18对象id评论表(message)中含有用户对医生或管理员所发表文章的见解与评论内容。如表4.5所示:表4.5评论表列名数据类型最大长度注释主键idint18序号PRIuseridint18用户idmidint18评论主题contenttext0评论内容typeint18类型creatdatevarchar255创建时间updateint18更新时间statustinyint4状态新增栏目表(column)是管理员新增首页栏目所存储表,用于对栏目的新增修改的读写操作。如表4.6所示:表4.6新增栏目表列名数据类型最大长度注释主键idint18序号PRItitlevarchar255栏目名称creatdatevarchar255创建时间attachtext0栏目简介 病历表(illness)是对患者病历存储所用的表。如表4.7所示:表4.7病历表列名数据类型最大长度注释主键idint18序号PRIuseridint18用户idcodevarchar255编号illnamevarchar255病历名称descriptionvarchar255描述imagevarchar255图片contenttext0病历详情creatdatevarchar255创建时间updateint18更新时间statustinyint4状态科室表(cates)是对医生所属科室的存储用表。如表4.8所示:表4.8科室表列名数据类型最大长度注释主键idint18科室编号PRItitlevarchar255类别名称imagevarchar255图片descriptionlongtext0描述creatdatevarchar255发布时间updateint18更新时间 答疑表(answer)是医生对患者所提问题的解答存储用表。如表4.9所示:表4.9答疑表列名数据类型最大长度注释主键idint18编码PRIuseridint18用户编码qustidint18问题编码answertext0回答内容creatdatevarchar255创建时间statusint4状态5.系统实现5.1系统登录实现项目启动:SpringBoot项目的启动,调用入口SpringApplication.run()。@SpringBootApplicationpublicclassSpringBootStudyConfigApplicationpublicstaticvoidmain(String[]args){SpringApplication.run(SpringBootStudyConfigApplication.class,args);}}项目启动成功标志如图5.1所示:图5.1启动成功在线问诊系统前后端用户登录的界面相同,如系统登陆界面图5.2所示:图5.2系统登录界面用户登录验证:用户登录此系统,登陆时,密码通过MD5加密,传到数据库,数据库根据用户名进行密码比对,若相同则返回前端数据,提交表单到index界面,用户登陆成功,若密码比对数据不符,则返回验证失败,不能登陆系统。如图5.3所示。图5.3系统登录验证失败核心代码:login.bute("message","登录成功");login.bute("url","index/rest?token="+token+"&username="+userid);return"index/test";5.2前台问诊模块问诊界面如图5.5所示,为在线问诊界面效果。本页面运用了websocket的长期连接特点,只需创建一次请求/反应信息对,之后都是以TCP连接的,避免了系统需要多次建立请求/反应信息对而产生的冗余头部信息,影响系统的性能。核心代码:functionconnect(){varsocket=newSockJS('/socket');stompClient=Stomp.over(socket);stompClient.connect({},function(frame){setConnected(true);console.log('连接中'+frame);stompClient.subscribe('/topic/notice',function(respnose){showResponse(JSON.parse(respnose.body).responseMessage); });图5.5在线问诊模块界面5.3病历管理模块如图5.6所示病历管理界面效果。图5.6病历信息管理模块界面用户进入首页后,点击左侧模块中的“我的病历”其中的“病历管理”下可以看到该用户所有的病历,考虑到用户可能会有过多的病历,该界面采用分页显示,左上角可以选择每页显示的病历数量。单击“创建病历”则可以新增病历,此界面可以对病历进行增删改查操作。核心代码:illnessService.update(ills);ill.add("ill",ills);
ill.add("input",true);
ill.add("message","操作成功");
return"admin/illness/edit";
}5.4新增病历模块新增病历界面效果如图5.7所示,新增病历界面效果。图5.7新增病历界面用户进入首页后,点击左侧模块中的“我的病历”其中的“病历管理”下,单击“创建病历”则可以新增病历,此界面可以对病历进行增删改查操作。核心代码:
IllsillX=illnessService.getillnessID(id);
ills.setStatus(status);5.5用户管理模块用户进入首页后,点击页面左上角的用户头像,会出现用户的信息下拉界面,单击“资料更新”可以对用户的资料进行更改。如图5.8所示,修改用户信息界面。图5.8修改用户信息界面进入在线问诊系统中的“个人信息”模块下的“用户信息管理”下单击“资料更新”,在资料更新界面可以修改个人信息,包括:姓名、性别、头像等。核心代码: publicStringpass(Stringid,Stringname,boolsex.){
Usersusers=usersService.getUsersById(Integer.parseInt(id));
users.setsex(sex);ill.add("users",users);
usersService.update(users);
ill.add("msg","审核成功");
return"index/users/update";5.6健康咨询模块进入在线问诊系统后,点击右上角小房子图标,可以进入该系统的首页,在此点击“健康你我”,可进入“健康咨询”页面,在此界面可以查看医生和用户发的问题帖子并且进行评论,分享自己的健康经验。健康咨询界面如图5.9所示。图5.9健康咨询模块界面进入在线问诊系统中的“健康咨询”模块下的单击“我要咨询”按钮,录入新增健康咨询。新增健康咨询,单击“新增”按钮根据评论的资料填写“健康咨询表”健康咨询录入结束后单击“提交内容”。对于已经录入的健康咨询,可以返回“健康咨询管理”界面,进行查询、修改等操作。核心代码:questionService.update(ills);
ill.add"input",true);
ill.add"ill",ills);
ill.add"message","提交成功");
return"index/question/edit";6.系统测试6.1测试目的一个系统从开发走向应用的过程中,需要考虑系统的各项功能是否完整和成熟及性能和其他特性是否符合预期效果。该在线问诊系统需要对这些项目进行测试,以便保证系统的容错性和数据的安全性。6.2测试用例6.2.1前台用户登录测试测试登录用户的数据与数据库中的数据匹配与否是否都可以登录该系统,经过测试得出表中数据,证明用户系统登录模块正常。如表6.1所示。表6.1前台用户登录测试表6.2.2后台管理员登录测试测试登录管理员账号的数据与数据库中的数据匹配与否是否都可以登录该系统,经过测试得出表中数据,证明系统登录模块正常。如表6.2所示。表6.2后台管理员登录测试6.2.3信息发布模块测试经过前面的测试,管理员登陆正常,由管理员对信息发布进行测试,测试数据在后台是否被提交更新,经过测试得出数据可以正常更新,测试结果如表6.3所示。表6.3管理员发布信息测试表
结论经过一段时间的打磨,毕业设计的完成也代表着要进入下一个阶段的学习了,在这次毕业设计中,我重新认识了下自己。大学四年的学习生活,我以为自己对所学知识有了完整的掌握。当毕业设计完成后,我才发现自己仅仅是学习到了软件工程行业的皮毛而已。这次毕业设计增强了我的实践能力和动手能力,也让我更加明白了,如果想要完成一个完美的设计需求,要全面了解当前要完成的需求软件的行业信息,做好市场调研,了解用户的使用体验,垂下心来认真研究。这次毕业设计完成得也不是很顺利,经过资料查询,需求调研,学习了更多的Java知识之后,再加上老师的悉心指导,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五版二手房交易房产评估及合同签订服务合同4篇
- 2025年度森林抚育承包树木合同协议书4篇
- 2025年度大蒜精油产品市场推广与品牌塑造合作合同4篇
- 2025年度户外拓展训练搭棚服务合同4篇
- 2025至2030年中国针织漂染机械配件数据监测研究报告
- 二零二五版房产抵押债务重组及个人信用维护协议3篇
- 2025年度海外定居财务规划与税务咨询合同2篇
- 二零二五年户外活动用可折叠护栏租赁合同2篇
- 2025年度大门行业投资与风险管理合同3篇
- 2025年度二零二五大学社团科技研发资助协议4篇
- 2024项目部安全管理人员安全培训考试题及参考答案(模拟题)
- 《习近平法治思想概论(第二版)》 课件 2. 第二章 习近平法治思想的理论意义
- 2025年中国文玩电商行业发展现状调查、竞争格局分析及未来前景预测报告
- 2024文旅古街元旦沉浸式体验国风游园会(古巷十二时辰主题)活动方案活动-46正式版
- (课件)-谈研究生培养
- 《disc性格分析》课件
- 2025年临床医师定期考核必考复习题库及答案(900题)
- 反恐应急预案3篇
- 英语-2025广西柳州高三二模试卷和答案
- 微更新视角下老旧社区公共空间适老化设计策略研究
- 电工中级工练习题库(含参考答案)
评论
0/150
提交评论