Java学员作品-电子文献平台
项目概述
成员介绍
李*宇:负责前台用户功能的开发:
•用户注册、登录
•用户资料修改
•客服沟通
•文献查询(模糊查询、条件查询)
•文献详情内容展示
购物车与购买系统
甘*云:负责后台管理员功能的开发:
•电子文献管理模块(增删改查)
•管理员管理模块(增删改查)
•聊天记录模块(查)
•订单模块(查)
•管理员登录
项目技术栈
后端技术栈:
1.使用SpringBoot整合框架进行模块式开发
2.使用Spring Security验证框架实现用户的注册、登录
3.使用Mybatis框架进行数据库交互,部分使用MybatisPlus简化开发代码及sql,在查询数据方面使用PageHelper进行分页
4.使用Solr实现文献查询,提高查询性能
5.使用Redis实现用户权限、购物车与查询数据的缓存,提高查询速度,减低数据库压力
6.使用Websocket实现客服沟通功能
7.使用支付宝沙箱实现支付功能的模拟
前端技术栈:
基于Vue CLI进行前端页面的开发,使用Axios,Element UI,QS等库辅助开发
数据库设计
项目演示
心得体会
问题1:
•在前台使用Mybatis进行文献的模糊查询无法满足实际的需求
•例如:用户在搜索框输入RussianMilitaryHistory,假如以整个输入结果进行模糊查询(article_nameLIKE‘%RussianMilitaryHistory%’)展示的结果太少;假如在业务层按空格拆分三个单词组成数组,然后用Mybatis遍历数组分别对三个单词进行模糊查询(article_nameLIKE‘%Russian%’ORarticle_nameLIKE‘Military’ORarticle_nameLIKE‘History’)则难以保证具有RussianMilitaryHistory这个字段的文献会出现在搜索结果的前列
解决方法:
•采用Solr取代原本的Mybatis查询,当数据从数据库导入Solr时会根据分词器与过滤器为文本内容创建索引,当用户进行查询时同样会将查询的语句进行拆分,根据命中索引的数量等一系列规则排列搜索出来的结果
问题2:客服
•如何实现一个客服与多个用户沟通
•如何保证建立连接后一定是用户先将消息发给客服
•如何将客服员工轮流分配给新连接进来的用户
•如何在前端页面通过点击左侧的用户列表来显示与不同用户的聊天内容,并将消息发给选择的用户
解决方法:
•将用户对象与客服对象作为一组键值对存入ConcurrentHashMap中,因为HashMap的键是唯一的,而不同键对应的值可以重复,因此得以保证每个用户都对应一个客服,该客服可以重复
•当用户发送消息时,会根据消息中所携带的用户ID在HashMap中查找指定的对象,然后查找对应的客服对象,通过客服的session属性指定消息发送的目标,因为HashMap中只能通过键查找值,因此第一次发送消息必然是用户发送给客服,然后客服在消息对象中解析出用户ID,再通过此ID查找对应的用户对象的session属性回复消息
【免责声明】本文部分系转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,如涉及作品内容、版权和其它问题,请在30日内与我们联系,我们会予以重改或删除相关文章,以保证您的权益!
Java开发高端课程免费试学
大咖讲师+项目实战全面提升你的职场竞争力
- 海量实战教程
- 1V1答疑解惑
- 行业动态分析
- 大神学习路径图
相关推荐
更多2023-07-11
2023-07-12
2023-07-12
达内就业喜报
更多>Java开班时间
-
北京 丨 11月27日
火速抢座 -
上海 丨 11月27日
火速抢座 -
广州 丨 11月27日
火速抢座 -
兰州 丨 11月27日
火速抢座 -
杭州 丨 11月27日
火速抢座 -
南京 丨 11月27日
火速抢座 -
沈阳 丨 11月27日
火速抢座 -
大连 丨 11月27日
火速抢座 -
长春 丨 11月27日
火速抢座 -
哈尔滨 丨 11月27日
火速抢座 -
济南 丨 11月27日
火速抢座 -
青岛 丨 11月27日
火速抢座 -
烟台 丨 11月27日
火速抢座 -
西安 丨 11月27日
火速抢座 -
天津 丨 11月27日
火速抢座 -
石家庄 丨 11月27日
火速抢座 -
保定 丨 11月27日
火速抢座 -
郑州 丨 11月27日
火速抢座 -
合肥 丨 11月27日
火速抢座 -
太原 丨 11月27日
火速抢座 -
苏州 丨 11月27日
火速抢座 -
武汉 丨 11月27日
火速抢座 -
成都 丨 11月27日
火速抢座 -
重庆 丨 11月27日
火速抢座 -
厦门 丨 11月27日
火速抢座 -
福州 丨 11月27日
火速抢座 -
珠海 丨 11月27日
火速抢座 -
南宁 丨 11月27日
火速抢座 -
东莞 丨 11月27日
火速抢座 -
贵阳 丨 11月27日
火速抢座 -
昆明 丨 11月27日
火速抢座 -
洛阳 丨 11月27日
火速抢座 -
临沂 丨 11月27日
火速抢座 -
潍坊 丨 11月27日
火速抢座 -
运城 丨 11月27日
火速抢座 -
呼和浩特丨11月27日
火速抢座 -
长沙 丨 11月27日
火速抢座 -
南昌 丨 11月27日
火速抢座 -
宁波 丨 11月27日
火速抢座 -
深圳 丨 11月27日
火速抢座 -
大庆 丨 11月27日
火速抢座