文未可获取一份本项目的java源码和数据库参考。
1.课题的基本内容,可能遇到的困难,提出解决问题的方法和措施
2.1课题的基本内容
本课题主要研究基于SpringBoot的社区宠物管理与推荐系统的设计与实现。用户注册登录系统前端后可以可以实现对宠物信息的增删改查、宠物挂失、宠物领养等功能,社区管理者登录系统后台管理端后可以对用户、宠物及系统等信息进行管理,并可以发表宠物领养信息。
1.1.1功能模块分析
1.登录注册
(1)用户登录注册
(2)社区管理者登录注册
2.宠物信息管理
(1)用户可以对宠物信息增删改查
(2)用户可以通过宠物id查询别人宠物的信息
(2)社区管理员可以对所有用户信息怎删改查
3.宠物挂失
(1)用户可以标注自己宠物状态(正常、走失或已找回)
(2)社区管理者可以对用户宠物状态进行修改,可以在线索栏提供信息
4.宠物违约
(1)用户可以查询自己是否违约并可以申请消除违约
(2)社区管理者可以添加和删除用户的违约状态,标记具体违约情况
5.推荐领养(用推荐算法实现推荐匹配)
(1)社区管理者录入待领养宠物的基本信息
(2)用户可以在标签添加自己对心仪宠物的关键词,可以选择领养或跳过
(3)系统推荐算法自动匹配合适的宠物在推荐栏展示
1.1.2项目总体架构设计
通过项目功能需求分析结果对系统进行架构设计。本系统采用三层体系
结构,分为表现层、业务逻辑层和数据层。如图1系统功能架构图所示:
表现层:web端。用户可通过web前端来注册登录,发起宠物挂失与领养,而管理员可通过web管理端完成对宠物相关信息管理。
业务逻辑层:主要是服务器接收客户端的各种请求,通过业务规则处理
各种请求并反馈信息给用户。业务逻辑层向上与表现层承接请求,向下与数据层进行数据通信。
数据层:主要由数据库存储数据,数据处理后,数据库对应增删改查。
1.1.3 ER图
根据分析社区宠物管理与推荐系统实体之间的关系,可以画出社区宠物管理与推荐系统整体ER图,如图2所示:
1.1.4数据库相关设计
根据社区宠物管理与推荐系统的整体功能需求,本系统主要有以下数据表:
字段名 | 数据类型 | 长度 | 注释 |
id | int | 11 | 主键 |
username | varchar | 50 | 姓名 |
password | varchar | 50 | 密码 |
表 1管理员信息表
字段名 | 数据类型 | 长度 | 注释 |
id | int | 11 | 主键 |
username | varchar | 50 | 用户名 |
pwd | varchar | 50 | 密码 |
keywords | varchar | 500 | 关键词,为用户推荐宠物提供支持 |
tel | varchar | 11 | 用户手机号 |
isweiyue | tinyint | 4 | 是否违约(1违约0未违约) |
表 2用户信息表
字段名 | 数据类型 | 长度 | 注释 |
id | int | 11 | 主键 |
name | int | 11 | 宠物名称 |
pic | varchar | 50 | 宠物图片 |
state | tinyint | 4 | 宠物状态(0 正常1走失2已找回) |
describe | varchar | 500 | 宠物介绍 |
userid | int | 11 | 用户id |
age | int | 11 | 宠物年龄 |
表 3宠物信息表
字段名 | 数据类型 | 长度 | 注释 |
id | int | 11 | 主键 |
petname | varchar | 50 | 宠物名称 |
username | varchar | 50 | 用户名 |
pic | varchar | 50 | 宠物图片 |
age | int | 11 | 宠物年龄 |
表 4推荐领养信息表
1.2问题及解决方案
1.2.1开发问题及解决方案
可能遇到的问题:
(1)社区宠物管理与推荐系统主要面对的是社区中养宠物的居民,因此居民年龄及文化层次都存在了很多不同,尤其是中老年居多,因此该系统的操作需要进行简单的指引。
(2)该系统用于对社区内宠物的管理与推荐,鉴于社区人口众多,宠物数量较多,因此要求系统操作过程要设计的尽可能简单快捷。
(3)社区宠物管理与推荐的相关系统众多,使用的技术要尽可能主流。
解决方案:
(1)系统界面需要以全中文并结合示意图来进行设计,方便中老年人理解和操作
(2)该系统要尽可能简捷快速,更加方便于宠物管理。考虑到系统的更新和维护,数据的修改及增加。
(3)选用的技术应为适合受众的、目前使用较为广泛的技术,以便后期的维护与管理。
1.2.2技术问题及解决方案
可能遇到的问题:
(1)第一次使用idea环境,对其的使用及掌握需要花费一定时间。
(2)初次尝试SpringBoot端和Web端双端展示,双端数据传输的相关问题还需思考。
(3)缺乏类似的开发经验,容易出现代码问题。
解决方案:
(1)使用网络查看相关论文,确定研究方向和研究内容,分析研究的关键和难点,确定各个板块的功能,制定相关计划及步骤。
(2)按照计划进行编码,测试各个重难点的可行性。
(3)集成各个功能模块进行总体的调试。
(4)反复测试,调试错误以及漏洞。