基于微信小程序的学校心理咨询聊天室的设计与实现

 博主介绍:✌程序员陈师兄、8年大厂程序员经历。csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌

🍅文末获取源码联系🍅

👇🏻 精彩专栏推荐订阅👇🏻 不然下次找不到哟

2022-2024年最全的计算机软件毕业设计选题大全:1000个热门选题推荐✅
《600套》Java项目精品实战案例
《300套》Java微信小程序项目实战
《300套》Python项目实战

感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及文档编写等相关问题都可以给我留言咨询,希望帮助更多的人

第二章 相关技术介绍

2.1 Java语言

学校心理咨询聊天室系统后台使用面向对象的Java技术进行编程,Java是由Sun公司开发的,是目前应用最广泛的编程语言。Java上手简单,功能强大,经过多年的发展,Java语言目前广泛应用在企业级应用开发、Windows系统开发、Web开发、移动技术等多个技术领域。C#语言稳定性强、安全性高,可以跨平台使用,代码复用度高,所以也使得Java语广泛应用。

总体来说,Java语言具有面向对象和多线程的特点,面向对象是把项目的业务抽象为对象,具有封装,继承和多态的特点。

封装是把实体的属性和方法进行合并,在项目中主要应用在数据库实体类中。通过封装保存数据和传递数据。继承,提高了编程的效率,在子类中定义属性和方法,继承类对子类进行继承,通用的方法直接可以使用,然后对其他业务进行扩展,大大提高了代码成功率,减少了开发难度。

多态指的是一个方法,可以采用不同形式调用,比如一个方法传递的变量值可以为一个两个三个,那么,针对不同的方位值,调用不同的方法来实现逻辑。

Java语言有四个部分,Java编程规范、Java虚拟机、Java class文件、Java应用程序接口。其中Java虚拟器对Java进行加载,执行代码,将加载的文件编写为引擎可以识别的二进制文件,然后进行翻译。

2.2 SSM框架

SSM框架包括SpringMVC、Spring、MyBatis三个方面。SpringMVC是MVC的改改,它也属于Spring框架,可以零配置的进行开发,缩减了开发的时间,当用户通过浏览器发送Request请求时,在配置文件里通过DispatcherServlet前端进行处理连接器。通过HandlerMapping识别器进行匹配,识别器是通过Control的控制器进行调用,Control完成处理后传送给DispatcherServlet解析Model和View后,返回信息到前台页面。Spring是J2EE的一个标准,Spring将表现层、业务层耦合降低,因为它包含IOC控制反转,支持依赖注入。Spring支持七个模块,每个模块可单独使用,也可以相互之间进行调用。Spring核心容器是通过工厂模式实现,代码的依赖和配置分离,另外一个是面向切片,也就是AOP,通过配置文件的配置,很轻松的实现切片管理,比如说实现事务管理。Spring也提供了数据访问对象,通过数据库操作,并将异常和数据提供给业务逻辑。

MyBatis是一个持久型框架,支持映射、存储过程。MyBatis不需要JDBC的数据库操作代码,通过注解或者XML映射数据对象直接反映数据集字段,首先通过SqlSession获取数据库操作链接实例,然后通过标准方法产生实体,实体是通过配置文件进行配置的。

2.3 Mysql数据库

数据库,指的是对数据按照一定格式进行存储的管理平台。数据库分为多种平台,常见的有SqlServer数据库、MySQL数据库等。数据库和程序无关,一个数据库可以为多个应用程序提供服务,数据库的对象就是数据。数据库是独立于应用程序的子系统,数据库设计包括数据结构设计、数据内容、易于扩展、数据安全等方面。目前,在大数据发展状态下,数据库广泛应用在信息处理、人工智能、AI等各个领域。

学校心理咨询聊天室系统使用的是MySQL开发,MySQL是一个关系型数据库,同时MySQL也是开源免费的数据库。对于关系型数据而言,当数据巨大的时候,查询效率会比较低下,所以通常采用索引或者改变数据集来提高数据的调用,从而提高检测效率。MySQL体积小,安装速度快,在中小型网站和应用程序中广泛存在,使用MySQL也具有极高的安全性,包括用户登录的权限,数据操作的管理权限,数据备份,恢复等功能,但目前MySQL也面临着一定的挑战,特别是在一些小型的数据库发展带来的市场占用。但是在MySQL关系数据库因为庞大的用户群,和优良特性,MySQL依然是建站首选,降低了开发成本和部署难度。

2.4 微信小程序

微信小程序是腾讯旗下的一种应用,不需要安装,发布到微信端即可使用的程序。虽然起名为小程序,但是借助后台管理,可以实现软件应有的所有强大功能。无论企业、组织、政府还是个人都可以申请使用。借助微信平台,虽然只发展了两年,但是小程序已经非常普遍。

微信小程序页面包括WXML页面、WXSS页面、js页面和json页面。WXML是创建网页的,WXSS是针对网页的样式代码文件,JS是处理数据和功能跳转的页面文件,而JSON对网页标题进行命名。可见,微信小程序关键技术在于JS、HTML5、和JSON数据格式的处理。

微信小程序的生命周期包括小程序的初始化后触发show事件,代码切换到后台,触发onhide事件,执行业务逻辑后,切换到前台,触发onshow事件。微信小程序也可以调用h5页面进行解析和显示,这不影响微信小程序的效率。使用内嵌H5页面也是目前常用的开发手段,这样做的好处在于可移植性强,不但应用在微信中,也可以再其它平台使用。另外,当发布微信小程序后,内嵌H5,更新代码时可以绕过微信的再次审核。

微信小程序的发布也很便捷,通过编译生成二维码,然后手机微信扫描二维码就可以上传代码到微信服务器。但是小程序端的数据如果使用了数据库和后台,需要先申请域名,把后台发布到备案后的域名空间下,才能正常显示界面。

小程序受到越来越多的用户喜好,用户不再受到手机系统的限制,只需要安装微信即可使用应用。

第三章 系统分析

3.1可行性分析

3.1.1 操作可行性

操作方面,本系统界面简洁,人机交互能力强。在学校心理咨询聊天室系统的基本业务下,降低操作门槛,可以方便的对各种信息进行浏览,交互。管理员对信息进行有效的管理,通过操作菜单进行每一个功能模块的具体操作,不存在前后模块业务上的复杂操作要求,是一种所见即所得的方式,所以在操作上具有可行性。

3.1.2 经济可行性

经济可行性主要从投入和产出进行分析,投入方面包括计算机硬件、计算机网络和本学校心理咨询聊天室系统软件开发的成本。目前计算机硬件成本较低,配置主流,然后网络方面,可以和其他的管理系统同时搭建,减少投入。在开发学校心理咨询聊天室系统上,业务流程并不复杂,时间成本低。产出方面,学校心理咨询聊天室系统投入使用后可以改变旧模式的效率低下,耗费人力,物力资源多的问题,并提高效率,带来经济利益,所以在经济上具有可行性。

3.1.3 技术可行性

技术方面,本系统利用微信小程序进行开发,后台选择面向对象的JAVA编程,JAVA具有功能强大,适应性强的特点。在JAVA的框架下可以开发出完善的应用程序系统,并且开发周期短。可以和MySQL数据库完美链接,数据库可以存储大量的数据并提供安全保障,因此,构建学校心理咨询聊天室系统,在技术上是可行的。

3.2 需求分析

3.2.1非功能性需求

系统非功能需求,只能是为了满足客户需求之外的非功能性要求。系统需要具有数据完整性验证的功能,对界面上非法的数据和不完整的数据进行提示,不能直接保存到数据库中,造成不完整性因素。

系统提供一定的交互能力,给不同用户带来方便,提供问题的回答和讨论。并将历史问题归纳整理,作为相同问题的案例进行展示。

对系统可维护性的要求,所有的管理系统都不是一成不变的,在使用中可能发生需求的增加或者变更要求。软件具有较高的可维护性,方便后期的升级换代,系统应该便于使用和访问和操作,为用户提供便捷的。便捷的访问操作,减少宣传和维护的费用。

在对学校心理咨询聊天室系统开发时,需要系统为Windows10,服务器为Tomcat软件,存储的空间较小,数据库和程序1G存储即可够用。

操作系统的性能要求客户访问系统的时间不应该超过三秒,系统处理多个并发用户,cpu占有率低于10%,同时响应时间应该为五秒内。

3.2.2功能需求

学校心理咨询聊天室系统为用户提供心理医生咨询服务,系统包括微信小程序端和后台。

微信小程序用户可以先进行注册,填写个人的基本信息提交到服务器,服务器把数据保存到数据库。管理员对大学生的信息进行验证后,大学生通过验证后的用户名和密码进行登录,登录之后查看心理文章。心理医生在首页展示,查看心理医生具体信息后,可以进行咨询,填写咨询信息后,医生端可以查看咨询,并进行回复。点开我的功能模块,修改个人信息,重新登录等功能。

管理员是后台的管理者,对系统用户进行管理,对系统健康信息进行管理,系统管理等,发布公告推送给小程序端。

在线聊天,大学生登录微信小程序后发布聊天内容,其他用户查看聊天信息,在线交流讨论,管理员也可以对聊天内容进行回复或者删除。

3.3 系统用例

学校心理咨询聊天室系统本质上是一个心理测试、医生咨询、心理聊天的平台,从用户角度,系统包括大学生、心理医生和管理员。

3.3.1 大学生功能需求

未经登录的用户不能使用本平台,通过授权的用户才能查看心理医生信息,选择具体的心理医生,查询心理医生,选择心理医生在线咨询。大学生定期对个人信息进行修改,包括个人信息和密码信息,最终通过注销后退出本系统。大学生在前台还可以查看系统公告、心理文章、心理测试、心理咨询、在线聊天等。

用户的用例图如3.1所示:

用户

图3-1 用户用例图

3.3.2 心理医生功能需求

心理医生具有课程管理的权限,通过后台的登录页面进入验证权限后才能进行管理。管理内容包括,管理大学生咨询的问题,心理问答管理、心理测试问题管理、个人资料管理。

心理医生的用例图如3.2所示

咨询师

图3-2 心理医生用例图

3.3.2 管理员功能需求

管理员具有最高的权限,通过后台的登录页面进入验证权限后才能进行管理。管理内容包括,管理心理文章管理、心理测试管理,聊天管理、用户管理、系统管理。

管理员的用例图如3.3所示

管理员

图3-3 管理员用例图

第四章 系统设计

4.1系统详细设计

4.1.1功能设计

学校心理咨询聊天室系统包括用户管理、系统管理、咨询管理、心理文章、系统管理、心理测试管理、心理问答管理。

用户管理包括管理员管理、心理医生管理、大学生用户管理。当前台大学生进行注册的时候,权限设为大学生。管理员用户权限设置为管理员。虽然数据存储在一个数据库表,但是在登录的时候使用权限类别进行区分,管理员用户无法通过客户端进行登录。同理,客户端用户也无法登陆管理员端。

心理医生发布心理文章的信息,信息发布后的公告在微信小程序客户端浏览查看。

其中系统功能结构图如4.1所示:

基于微信小程序的学校心理咨询聊天室

系统管理

会员管理

医生管理

心理文章管理

聊天管理

管理员

医生

会员

测试管理

用户登录

个人信息管理

咨询管理

密码修改

心理文章管理

用户登录

心理咨询

聊天交流

查看心理文章信息

在线测试

图4.1 系统功能结构图

主要功能:

会员管理。会员用户的注册、登录。会员在个人中心,进行个人信息的修改和用户密码的修改,系统注销等操作。

心理医生管理,管理员录入心理医生,修改心理医生信息。在前台可以查看心理医生风采,包括心理医生的介绍和个人图片信息。心理医生通过用户名和密码登录系统,管理个人信息。

其中图片是保存在服务器端,数据库记录对应的图片链接地址,在资源类信息保存中还可以通过二进制进行保存。本系统为了降低数据库的负荷,把图片以文件格式进行存储,这样既减轻了服务器的数据库的存储,也提高了图片数据传输的速度。大学生发布后,在管理端对数据进行管理,删除一些违法违规的记录。没有删除的记录将在客户端首页进行展示,用于其他大学生查看。大学生可以通过心理文章的分类进行搜索,不同分类对应了不同的心理文章。也可以通过关键字进行检索。

更改个人信息:用户登录后可以对个人信息进行修改,确保用户信息的准确性和实效性。

心理测试:为用户提供一些心理小测试,用户可以根据测试结果对自己的心理状态有一个大概的了解。

心理文章:里面有各个专题的心理文章,比如人际社交、家庭关系等。

心理咨询:主要是学生用户进行心理咨询。

聊天交流,在情感专区、情绪日志部分发布聊天信息,微信小程序用户可以发布情绪日志,设置公开或者个人查看。

4.2.2后台模块程设计

业务流程图反映了系统各业务之间的关联和走向。用户点击提交按钮,实现登录。在进行登录前,需要进行验证,验证用户名和密码是否输入。而用户是否需要登录,先通过session验证用户信息,然后验证session中的用户是否存在于变量中,最后验证是否需要登录。其中管理员登录部分的登录验证流程图为:

用户注册登录

输入用户信息

查询用户信息表

是否输入

No

Yes

是否存在

Yes

No

用户登录

结束

图4.3 登录验证流程图

管理员登录后,对系统进行管理,主要包括对用户的管理、课程管理、咨询管理,每一种功能的管理都对应数据的增删改查,其中管理信息流程图如4.4所示:

图4 .4 管理员管理信息流程图

4.2.3微信小程序用户模块流程设计

学校心理咨询聊天室系统微信小程序端,需要大学生用户注册后,使用注册的用户名和密码进行登录,登录成功后,查看心理文章信息,可以通过关键字进行查询,对心理医生进行咨询。其中前台客户端功能流程图如图4.5所示。

Y

开始

登录

回复信息

咨询

是否成功

Y

收藏(关注)等

是否成功

查看医生信息

结束

N

N

图4.5 客户端流程图

4.2 数据库设计

4.2.1逻辑结构设计

学校心理咨询聊天室系统的ER图如4.6所示:

图4.6 系统ER图

管理员

咨询消息

健康知识

医生

会员

问答信息

管理

管理

审核

咨询

回复

明细

1

1

n

n

n

1

1

n

1

n

n

m

从ER图可以看出学校心理咨询聊天室系统的数据库表和各数据库表关系,如管理员管理医生信息,心理文章信息。管理用户信息,用户可以咨询信息。

4.2.2物理结构设计

学校心理咨询聊天室系统中包括多个信息表。

  1. 表: xinliketang信息表
编号数据字段名称对应类型主键允许空字段的备注信息
No1C_idbigint(8)PKNo主键
No2C_addtimetimestamp(8)NONo创建时间
No3C_biaotinvarchar(400)NONull标题
No4C_neirongtext(16)NONull内容
No5C_fengmiannvarchar(400)NONull封面
No6C_faburiqidatetime(8)NONull发布日期
No7C_yishenggonghaonvarchar(400)NONull医生工号
No8C_yishengxingmingnvarchar(400)NONull医生姓名
No9C_thumbsupnumint(4)NONull
No10C_crazilynumint(4)NONull
  1. 表: discussxinliyisheng信息表
编号数据字段名称对应类型主键允许空字段的备注信息
No1C_idbigint(8)PKNo主键
No2C_addtimetimestamp(8)NONo创建时间
No3C_refidbigint(8)NONo关联表id
No4C_useridbigint(8)NONo用户id
No5C_nicknamenvarchar(400)NONull用户名
No6C_contenttext(16)NONull评论内容
No7C_replytext(16)NONull回复内容
  1. 表: storeup信息表
编号数据字段名称对应类型主键允许空字段的备注信息
No1C_idbigint(8)PKNo主键
No2C_addtimetimestamp(8)NONo创建时间
No3C_useridbigint(8)NONo用户id
No4C_refidbigint(8)NONull收藏id
No5C_tablenamenvarchar(400)NONull表名
No6C_namenvarchar(400)NONo收藏名称
No7C_picturenvarchar(400)NONo收藏图片
No8C_typenvarchar(400)NONull类型(1:收藏,21:赞,22:踩)
No9C_inteltypenvarchar(400)NONull推荐类型
  1. 表: examrecord信息表
编号数据字段名称对应类型主键允许空字段的备注信息
No1C_idbigint(8)PKNo主键
No2C_addtimetimestamp(8)NONo创建时间
No3C_useridbigint(8)NONo用户id
No4C_usernamenvarchar(400)NONull用户名
No5C_paperidbigint(8)NONo心理测评id(外键)
No6C_papernamenvarchar(400)NONo心理测评名称
No7C_questionidbigint(8)NONo题目id(外键)
No8C_questionnamenvarchar(400)NONo题目名称
No9C_optionstext(16)NONull选项,json字符串
No10C_scorebigint(8)NONull分值
No11C_answernvarchar(400)NONull正确答案
No12C_analysistext(16)NONull答案解析
No13C_myscorebigint(8)NONo题目得分
No14C_myanswernvarchar(400)NONull考生答案
  1. 表: cepingfenxi信息表
编号数据字段名称对应类型主键允许空字段的备注信息
No1C_idbigint(8)PKNo主键
No2C_addtimetimestamp(8)NONo创建时间
No3C_yonghumingnvarchar(400)NONull用户名
No4C_xingmingnvarchar(400)NONull姓名
No5C_touxiangnvarchar(400)NONull头像
No6C_nianlingnvarchar(400)NONull年龄
No7C_shoujinvarchar(400)NONull手机
No8C_ceshitimunvarchar(400)NONull测试题目
No9C_ceshichengjinvarchar(400)NONull测试成绩
No10C_jieguofenxitext(16)NONull结果分析
No11C_cepingshijiandatetime(8)NONull测评时间
No12C_useridbigint(8)NONull用户id
  1. 表: config信息表
编号数据字段名称对应类型主键允许空字段的备注信息
No1C_idbigint(8)PKNo主键
No2C_namenvarchar(200)NONo配置参数名称
No3C_valuenvarchar(200)NONull配置参数值
  1. 表: xinliyisheng信息表
编号数据字段名称对应类型主键允许空字段的备注信息
No1C_idbigint(8)PKNo主键
No2C_addtimetimestamp(8)NONo创建时间
No3C_yishenggonghaonvarchar(400)NONo医生工号
No4C_mimanvarchar(400)NONo密码
No5C_yishengxingmingnvarchar(400)NONo医生姓名
No6C_xingbienvarchar(400)NONull性别
No7C_touxiangnvarchar(400)NONull头像
No8C_zhichengnvarchar(400)NONull职称
No9C_shanzhangnvarchar(400)NONull擅长
No10C_gerenjianjietext(16)NONull个人简介
No11C_lianxidianhuanvarchar(400)NONull联系电话
No12C_clicktimedatetime(8)NONull最近点击时间
No13C_clicknumint(4)NONull点击次数
  1. 表: forum信息表
编号数据字段名称对应类型主键允许空字段的备注信息
No1C_idbigint(8)PKNo主键
No2C_addtimetimestamp(8)NONo创建时间
No3C_titlenvarchar(400)NONull帖子标题
No4C_contenttext(16)NONull帖子内容
No5C_parentidbigint(8)NONull父节点id
No6C_useridbigint(8)NONo用户id
No7C_usernamenvarchar(400)NONull用户名
No8C_isdonenvarchar(400)NONull状态
  1. 表: exampaper信息表
编号数据字段名称对应类型主键允许空字段的备注信息
No1C_idbigint(8)PKNo主键
No2C_addtimetimestamp(8)NONo创建时间
No3C_namenvarchar(400)NONo心理测评名称
No4C_timeint(4)NONo测评时长(分钟)
No5C_statusint(4)NONo心理测评状态
  1. 表: users信息表
编号数据字段名称对应类型主键允许空字段的备注信息
No1C_idbigint(8)PKNo主键
No2C_usernamenvarchar(200)NONo用户名
No3C_passwordnvarchar(200)NONo密码
No4C_rolenvarchar(200)NONull角色
No5C_addtimetimestamp(8)NONo新增时间
  1. 表: examquestion信息表
编号数据字段名称对应类型主键允许空字段的备注信息
No1C_idbigint(8)PKNo主键
No2C_addtimetimestamp(8)NONo创建时间
No3C_paperidbigint(8)NONo所属心理测评id(外键)
No4C_papernamenvarchar(400)NONo心理测评名称
No5C_questionnamenvarchar(400)NONo题目名称
No6C_optionstext(16)NONull选项,json字符串
No7C_scorebigint(8)NONull分值
No8C_answernvarchar(400)NONull正确答案
No9C_analysistext(16)NONull答案解析
No10C_typebigint(8)NONull题目类型,0:单选题 1:多选题 2:判断题 3:填空题(暂不考虑多项填空)
No11C_sequencebigint(8)NONull题目排序,值越大排越前面
  1. 表: yonghu信息表
编号数据字段名称对应类型主键允许空字段的备注信息
No1C_idbigint(8)PKNo主键
No2C_addtimetimestamp(8)NONo创建时间
No3C_yonghumingnvarchar(400)NONo用户名
No4C_mimanvarchar(400)NONo密码
No5C_xingmingnvarchar(400)NONull姓名
No6C_touxiangnvarchar(400)NONull头像
No7C_xingbienvarchar(400)NONull性别
No8C_nianlingint(4)NONull年龄
No9C_shoujinvarchar(400)NONull手机
  1. 表: discussxinliketang信息表
编号数据字段名称对应类型主键允许空字段的备注信息
No1C_idbigint(8)PKNo主键
No2C_addtimetimestamp(8)NONo创建时间
No3C_refidbigint(8)NONo关联表id
No4C_useridbigint(8)NONo用户id
No5C_nicknamenvarchar(400)NONull用户名
No6C_contenttext(16)NONull评论内容
No7C_replytext(16)NONull回复内容
  1. 表: messages信息表
编号数据字段名称对应类型主键允许空字段的备注信息
No1C_idbigint(8)PKNo主键
No2C_addtimetimestamp(8)NONo创建时间
No3C_useridbigint(8)NONo留言人id
No4C_usernamenvarchar(400)NONull用户名
No5C_contenttext(16)NONull留言内容
No6C_cpicturenvarchar(400)NONull留言图片
No7C_replytext(16)NONull回复内容
No8C_rpicturenvarchar(400)NONull回复图片
  1. 表: zaixianzixun信息表
编号数据字段名称对应类型主键允许空字段的备注信息
No1C_idbigint(8)PKNo主键
No2C_addtimetimestamp(8)NONo创建时间
No3C_yishenggonghaonvarchar(400)NONull医生工号
No4C_yishengxingmingnvarchar(400)NONull医生姓名
No5C_touxiangnvarchar(400)NONull头像
No6C_zixunneirongnvarchar(400)NONull咨询内容
No7C_zixunshijiandatetime(8)NONull咨询时间
No8C_yonghumingnvarchar(400)NONull用户名
No9C_nianlingnvarchar(400)NONull年龄
No10C_shoujinvarchar(400)NONull手机
No11C_sfshnvarchar(400)NONull是否审核
No12C_shhftext(16)NONull审核回复
No13C_useridbigint(8)NONull用户id

第五章 系统实现

5.1 运行环境

学校心理咨询聊天室系统前台使用小程序,后台JAVA技术,数据库使用Mysql技术,工具eclipse、微信开发者软件。

具体见表5-1所示。

表5.1 学校心理咨询聊天室系统环境硬件表

硬件名称数量要求性能要求等级要求
程序服务器主机1I7/8G DDR3/硬盘500G
数据库服务器主机1I5/4G DDR3/硬盘100G
测试客户端主机1或者以上无要求,可以联网即可

配置好硬件服务器后,对服务器进行软件安装,下面5.2是环境部署的软件表。

表5.2 学校心理咨询聊天室系统服务器环境硬件表

类型名称软件要求系统要求
程序服务器主机Tomcat7.5或者以上Windows Server
数据库服务器主机MySQL服务器Windows Server
测试微信小程序微信开发者工具Windows 10

5.2 服务器功能实现

5.2.1管理员登录

使用脚本把数据库导入到mysql中,配置tomcat服务器,运行程序。其中用户登录的界面如下所示。

图5.1 管理员登录

用户密码是通过MD5进行加密的。MD5本身是一个不可逆的加密方法,所以在查询前需要对密码进行MD5加密,把加密后的字符串和数据库中的密码进行比对,通过比对后才能进行查询。最终,最终查询成功后把信息保存在session中,Session是存储在服务器端的对象,是比较安全的一种技术,在管理端通过判断session中的十来获取用户操作权限。

5.2.2管理主界面

主界面主要包括了系统管理菜单,通过菜单对系统功能进行管理。每一个功能包括基本的查询、添加等操作。其中主界面如下所示。

图5.2 管理主界面

5.2.3心理文章信息管理

管理员登录后,对课程进行管理。包括心理文章编号、名称、类别、内容信息。其中心理文章管理如下所示。

图5.3 心理文章管理界面

创建一个信息录入的form表单,在form中设计心理文章基本信息收集栏,点击提交的时候,通过form的POST方法传递到心理文章Action方法中。在Action中定义插入的方法,先实例化心理文章实体类,将心理文章信息通过实体类进行设置,然后调用心理文章数据库操作方法,保存心理文章信息到数据库,然后返回成功消息。

5.2.4心理医生管理

心理医生管理包括心理医生信息查看和心理医生删除功能,管理员对过期的心理医生进行删除。其中心理医生管理如下所示。

图5.5 心理医生管理界面

创建一个信息录入的form表单,在form中设计心理医生基本信息收集栏,点击提交的时候,通过form的POST方法传递到心理医生Action方法中。在Action中定义插入的方法,先实例化心理医生实体类,将心理医生信息通过实体类进行设置,然后调用心理医生数据库操作方法,保存心理医生信息到数据库,然后返回成功消息。

在心理医生信息管理页面先通过查询条件,获取对应的心理医生列表,然后在心理医生管理页面通过标签,把所有的心理医生信息绑定到列表中。

5.2.5心理测试管理

心理测试管理包括心理测试信息查看和心理测试删除审核功能,心理医生对心理测试的信息进行管理。其中心理测试管理如下所示。

图5.5 心理测试管理界面

在心理测试信息管理页面先通过查询条件,获取对应的心理测试列表,然后在心理测试管理页面通过标签,把所有的心理测试信息绑定到列表中。

5.3 微信小程序功能实现

5.3.1用户注册

学校心理咨询聊天室系统的用户,必须得进行注册。如下所示:

图5.6 用户注册界面

使用学校心理咨询聊天室系统的客户端时,先要进行注册,打开用户注册的页面,用户填写所有的注册信息后,点击注册,在注册中调用JS的AJAX方法。方法中接收用户实体信息,调用服务器端的用户注册方法。在服务器端获取用户实体信息,对实体进行序列化处理,然后调用用户信息保存的service数据库操作方法,将实体内的用户信息通过SQL语句插入到数据库,并返回一个成功标识的Json对象,在客户端解析Json。判断返回的信息是否注册成功并提供给用户,这样就实现了用户注册的完整流程。

5.3.2用户登录

用户填写用户名及密码,正确后才能登入系统,不正确则重新登录。

图5.7 用户登录

打开用户登录的页面,用户填写所有的登录信息后,点击登录,在登录中调用JS的AJAX方法。方法中接收用户实体信息,调用服务器端的用户登录方法。在服务器端获取用户实体信息,对实体进行序列化处理,然后调用用户信息查询的service数据库操作方法,将查询结果通过Json对象进行返回,在客户端解析Json,判断返回的信息是否登录成功。

5.3.3心理文章查看

用户登录后,进入系统的主界面,能够看到所有心理文章信息,包括成心理文章分类信息,心理文章信息。其中心理文章主界面如5.8所示:

图5.8 心理文章主界面

5.3.4心理医生查看

点击心理医生列表,跳转到心理医生详情的界面,用户可选择进行查看。在心理医生详情界面,点击首页,返回到主界面。

图5.9 心理医生信息查询界面

在心理医生页面加载时,初始化方法中,调用JS的AJAX方法。方法中接收心理医生实体信息,调用服务器端的心理医生查询方法。在服务器端获取心理医生实体,对实体进行序列化处理,判断查询条件,然后调用心理医生查询的service数据库操作方法,将查询结果通过Json对象进行返回,在客户端解析Json,把结果存储在临时集合变量中,对变量进行数据显示绑定到界面。

5.3.4医生咨询

选择相关的心理医生后,在线咨询,咨询后在医生的问题列表中,可以提交到后台。医生咨询界面如5.10所示:

图5.10 医生咨询界面

5.3.5聊天交流

选择相关的聊天交流后,在线聊天,聊天后在聊天的信息列表中,可以提交到后台。聊天咨询界面如5.11所示:

图5.11 聊天咨询界面

在聊天咨询页面加载时,初始化方法中,调用JS的AJAX方法。方法中接收聊天咨询实体信息,调用服务器端的聊天咨询查询方法。在服务器端获取聊天咨询实体,对实体进行序列化处理,判断查询条件,然后调用聊天咨询查询的service数据库操作方法,将查询结果通过Json对象进行返回,在客户端解析Json,把结果存储在临时集合变量中,对变量进行数据显示绑定到界面。

第六章 系统测试

6.1 测试说明

系统集成测试是对系统的接口进行测试,查看接口是否能够正确正常工作,包括数据库连接接口的测试。数据库测试就包括数据基本信息的增删改查操作测试,数据上线测试,数据下线测试,主外键关联测试,数据库优先级操作测试和安全性的测试。

系统安全性测试包括模糊匹配方法测试、状态机模型方法测试、黑盒模型测试和白盒模型测试,验证系统是否符合安全要求。

实用性测试是由用户发起的,判断本系统是否具有实际可行性可用性,用户得到确认后发布系统,进行上线。

压力测试是模拟足够多的链接,并长时间的运行系统,测试系统是否一直可靠与稳定,最大限度满足本系统的具体需求。

6.2 功能测试

系统登录是学校心理咨询聊天室系统 第一道安全防线,设计登录测试用例涉及到多个方面,下面对系统登录测试进行说明。测试过程如6.1所示:

表6.1 登录功能测试结果

数据输入预期结果测试步骤结论
用户名和密码为空提出错误消息不输入信息,直接点击登录按钮。查看是否提示错误的消息。经过修改后和预期一致
用户名和密码错误输入。不能登录输入正确的用户名,错误的密码。输入错误的用户名,正确的密码,点击登录,提示失败。修改后和预期一致
输入正确的用户名和密码。成功登录输入正确的用户名,正确的密码。点击登录,提示登录成功。通过

测试心理文章模块功能完整性,把心理文章信息录入到MySQL中,打开MySQL查看是否存在录入的数据,然后对心理文章进行修改或者删除,比较结果,对心理文章的内容最大长度和最小长度进行测试,查看是否符合要求。其中心理文章管理测试过程如6.2所示:

表6.2 心理文章管理测试结果

测试项目预期结果测试步骤结论
心理文章的新增心理文章信息保存到数据库运行学校心理咨询聊天室系统 ,在心理文章新增界面录入心理文章,点击添加心理文章按钮。测试心理文章为空的情况,正确输入的情况。通过
心理文章的列表界面加载所有的心理文章在心理文章信息列表,查看所有的心理文章信息,包括分页连接是否可用,数据条数和数据库是否一致。通过
心理文章的修订数据库信息成功修订运行学校心理咨询聊天室系统 ,在心理文章修订界面修改心理文章,点击修订心理文章按钮。通过
心理文章的删除数据库信息成功删除在心理文章信息列表页面,选择要删除的心理文章,点击删除。删除后查看列表和数据库表是否还存在该记录。经过修改后和预期一致

测试系统用户模块功能完整性,把系统用户信息录入到MySQL中,打开MySQL查看是否存在录入的数据,然后对系统用户进行修改或者删除,比较结果,对系统用户的内容最大长度和最小长度进行测试,查看是否符合要求。其中系统用户管理测试过程如6.3所示:

表6.3 系统用户管理测试结果

测试项目预期结果测试步骤结论
系统用户的新增系统用户信息保存到数据库运行学校心理咨询聊天室系统 ,在系统用户新增界面录入系统用户,点击添加系统用户按钮。测试系统用户为空的情况,正确输入的情况。通过
系统用户的列表界面加载所有的系统用户在系统用户信息列表,查看所有的系统用户信息,包括分页连接是否可用,数据条数和数据库是否一致。通过
系统用户的修订数据库信息成功修订运行学校心理咨询聊天室系统 ,在系统用户修订界面修改系统用户,点击修订系统用户按钮。通过
系统用户的删除数据库信息成功删除在系统用户信息列表页面,选择要删除的系统用户,点击删除。删除后查看列表和数据库表是否还存在该记录。经过修改后和预期一致

6.3 测试说明

本学校心理咨询聊天室系统按照软件设计进行,完成了需求分析,从用户角度出发,设计开发。对用户的要求不是太高,可以基本操作,就能录入信息,比较实用。

通过对测试用例的测试,并对bug进行了修改,完善了学校心理咨询聊天室系统的功能,对照系统需求分析,完成了系统开发任务,符合了开发需求。

总结

本文研究制作了学校心理咨询聊天室系统,通过软件工程方法,运用理论和编码实践,完成了系统功能设计实现和测试。

首先对学校心理咨询聊天室系统进行了课题分析,进行了心理文章查询情况的调研,参考相关文献,结合需求,进行文档整理。使用面向对象语言JAVA、和微信小程序,数据库使用mysql。通过数据库存储信息数据,实现信息同步控制和管理。学校心理咨询聊天室系统的提出,很大程度上提高了心理文章的利用率。

通过测试发现,系统也存在一些问题,这些问题在以后实际工作中,我将会继续学习逐步完善。下面进行具体介绍。

本学校心理咨询聊天室系统的具体业务不够精细,不能完全满足实际使用需求,系统目前只提供了某一个心理文章管理,对心理健康的处理不够具体,无法查询所有的心理健康的信息,也就无法进行预约。

对数据库的数据冗余和数据安全也需要进一步完善。当心理文章信息过大时,如何快速的查询出心理文章信息,如何处理大数据的响应问题等。目前的查询是把所有的心理文章信息一次性查询出来,而显示的时候只需要显示前几十条,可以通过存储过程来计算需要查询的条数,提高查询效率。

  • 7
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值