SSM(Spring+SpringMVC+MyBatis)框架集由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容)。常作为数据源较简单的web项目的框架。
2.1.1 Spring
Spring就像是整个项目中装配bean的大工厂,在配置文件中可以指定使用特定的参数去调用实体类的构造方法来实例化对象。也可以称之为项目中的粘合剂。
Spring的核心思想是IoC(控制反转),即不再需要程序员去显式地`new`一个对象,而是让Spring框架帮你来完成这一切。
2.1.2 SpringMVC
SpringMVC在项目中拦截用户请求,它的核心Servlet即DispatcherServlet承担中介或是前台这样的职责,将用户请求通过HandlerMapping去匹配Controller,Controller就是具体对应请求所执行的操作。SpringMVC相当于SSH框架中struts。
2.1.3 mybatis
mybatis是对jdbc的封装,它让数据库底层操作变的透明。mybatis的操作都是围绕一个sqlSessionFactory实例展开的。mybatis通过配置文件关联到各实体类的Mapper文件,Mapper文件中配置了每个类对数据库所需进行的sql语句映射。在每次与数据库交互时,通过sqlSessionFactory拿到一个sqlSession,再执行sql命令。
页面发送请求给控制器,控制器调用业务层处理逻辑,逻辑层向持久层发送请求,持久层与数据库交互,后将结果返回给业务层,业务层将处理逻辑发送给控制器,控制器再调用视图展现数据。
软件开发环境及开发工具:
操作系统:Windows 10、Windows 7、Windows 8
开发语言:Java
使用框架:spring boot
前端技术:JavaScript、VUE.js(2.X)、css3
开发工具:IDEA(2020版)/MyEclipse(10)/Eclipse、Visual Studio Code
数据库:MySQL 5.7.26(版本号)
数据库管理工具:phpstudy/Navicat
JDK版本:Java sdk8
Maven:apache-maven 3.8.1-bin
硬件环境:
CPU:2.10GHz及以上
内存:4GB及以上
硬盘:500MB以上
显卡:图像级显卡以上
B/S架构采取浏览器请求,服务器响应的工作模式。
用户可以通过浏览器去访问Interssm上由Web服务器产生的文本、数据、图片、动画、视频点播和声音等信息;
而每一个Web服务器又可以通过各种方式与数据库服务器连接,大量的数据实际存放在数据库服务器中;
从Web服务器上下载程序到本地来执行,在下载过程中若遇到与数据库有关的指令,由Web服务器交给数据库服务器来解释执行,并返回给Web服务器,Web服务器又返回给用户。在这种结构中,将许许多多的网连接到一块,形成一个巨大的网,即全球网。而各个企业可以在此结构的基础上建立自己的Interssm。
在 B/S 模式中,用户是通过浏览器针对许多分布于网络上的服务器进行请求访问的,浏览器的请求通过服务器进行处理,并将处理结果以及相应的信息返回给浏览器,其他的数据加工、请求全部都是由Web Server完成的。通过该框架结构以及植入于操作系统内部的浏览器,该结构已经成为了当今软件应用的主流结构模式。。
数据库是系统开发过程中不可或缺的一部分。 在WEB应用方面,MySQL AB开发了一个具有很大优势的MySQL关系数据库管理系统。 MySQL可以将数据存储在不同的表中,这非常灵活,并且还可以提高系统在实际应用中的速度。 数据库访问最常用于标准SQL语言,MySQL用于SQL语言,因此它具有高度兼容性。数据库的操作是必不可少的,包括对数据库表的增加、删除、修改、查询等功能。现如今,数据库可以分为关系型数据库和非关系型数据库,Mysql属于关系性数据库,Mysql数据库是一款小型的关系型数据库,它以其自身特点:体积小、速度快、成本低等,Mysql数据库是目前最受欢迎的开源数据库。
在WEB应用技术中, Mysql数据库支持不同的操作系统平台,虽然在不同平台下的安装和配置都不相同,但是差别也不是很大,Mysql在Windows平台下两种安装方式,二进制版和免安装版。安装完Mysql数据库之后,需要启动服务进程,相应的客户端就可以连接数据库,客户端可通过命令行或者图形界面工具登录数据库
Android是基于Linux内核的操作系统,早期由Google开发,后由开放手机联盟开发。它采用了软件堆的架构,主要分为三部分。底层以Linux内核工作为基础,只提供基本功能;其他的应用软件则由各公司自行开发,以Java作为编写程序的一部分。另外,为了推广此技术,Google和其它几十个手机公司建立了开放手机联盟。Android在未公开之前常被传闻为GPhone。
它采用了软件堆层(software stack,又名软件叠层)的架构,主要分为三部分:底层以Linux核心为基础,由c语言开发,只提供基本功能。中间层包括函数库Library和虚拟机Virtual Machine,由C++开发。最上层是各种应用软件,包括通话程序,短信程序等,应用软件则由各公司自行开发,以Java编写。
Ajax的出现,也带来了另外一个问题,那就是有了Ajax以后,之前用模板语言实现起来的功能变得简单,之前模板语言实现不了的功能现在也能实现了。这样就造成越来越多的逻辑转移到了javascript上,使其变得越来越复杂。
随着js复杂度的增长,原来的开发模式出现了问题,一个程序员搞定全站变得越来越不靠谱,因此在这个时候就把网站开发这个职位划分成了前端和后端两个职位。但是只划分了前后端的职责范围还是远远不够的,在原来的开发模式下,前后端的代码也在一起的。现在既然已经分为前后端两波人在开发了,维护同一套代码就变得不那么方便。项目越复杂,出现你等我,我等你的情况就会越来越多,这样就拖慢了整体团队的节奏。所以为了团队的效率,前后端的代码也要做分离。
前后端的分离方式分为部分分离和全部分离两种,部分分离是只把脚本和样式分离出去,而html模板还留在后端通过java,velocity或者freemarker来渲染;另一种就是完全分离,脚本样式以及模板全都放在前端来维护。
部分分离已经很大程度上解决了前后端开发时的协调问题,开发效率也得到了很大程度的提升。但也得承认,这种方式也还是有问题的。当要开发html模板的时候,就需要搭起一整套后端的开发环境,或者是找后端程序员来协助。
而完全分离一般有两种方案,第一种就是使用velocity这种在nodejs和java下都可以编译的页面模板,在开发时放到前端项目里,但在发布时,会把模板发布到后端的模板目录下,这样,开发时就做到了完全分离。这种方式最大的好处就是线上模板的渲染还是由java来做的,形成的是带有动态数据的html,比较有利于SEO。但这种方式下,前端的开发环境和发布系统的复杂度都相对较高,单纯的前端改动也还是要带着后端一起发布。
第二种完全分离的方式,就是把纯静态的html模板完全放在前端,数据全部通过RESTful接口来进行交互。这样前后端就完全分开了,脱离了后端的模板,而这种方式的系统复杂度也会比第一种完全分离的方式低。但这种方案下,所有的页面数据都是用js渲染的,没有动态模板,不太利于SEO。这个不足我们可以通过做server render或者给蜘蛛做一套定制页面来解决。
所谓系统分析就是,需求人员通过与用户的沟通,所获取的信息,然后把这些信息通过需求说明书的方式展示给用户和开发人员。在软件功能发展的历史长河中,很长时间,特别是最开始的时候,需求分析的重要性并不被人们所认同,例如当时美国IBM公司为英国电信公司开发一套信息管理系统,在需求不明确的情况下开始开发,最初的工期为一年,由于需求获取不清晰导致工期推迟了半年多,造成巨大损失。我们很多软件公司也存在这种情况,边需求,边开发,甚至与用户没有沟通清楚的情况下,直接照搬同类型的项目进行更改,导致到系统验收的时候,重新更改,造成了人力、物力的极大浪费。而导致这一切后果的原因就是需求获取不及时、不清楚、不全面。
宠物领养系统APP主要目标是实现网上的相关信息管理服务。在确定了目标后,我们从以下四方面对能否实现本系统目标进行可行性分析。
3.1.1 技术可行性宠物领养系统APP主要采用java技术,基于B/S结构,Mysql数据库,对于应用程序的开发要求具备完整功能,使用简单的特点,并建立一个数据完整安全稳定的数据库。宠物领养系统APP的开发技术具有很高可行性,且开发人员掌握了一定的开发技术,所以系统的开发具有可行性。
3.1.2操作可行性宠物领养系统APP的登录界面简单易于操作,采用常见的界面窗口来登录界面,通过电脑进行访问操作,会员只要平时使用过电脑都能进行访问操作。此系统的开发采用java语言开发,基于B/S结构,这些开发环境使系统更加完善。本系统具有易操作、易管理、交互性好的特点,在操作上是非常简单的。因此本系统可以进行开发。
3.1.3 经济可行性宠物领养系统APP是基于java模式,采用Mysql数据库储存数据,所要求的硬件和软件环境,市场上都很容易购买,程序开发主要是管理系统的开发和维护。所以程序在开发人力、财力上要求不高,而且此系统不是很复杂,开发周期短,在经济方面具有较高的可行性。
3.1.4 法律可行性此宠物领养系统APP是自己设计的管理系统,具有很大的实际意义。因为无论是软件还是数据库,采用的都是开源代码,因此这个系统的开发和设计,并不存在侵权等问题,在法律上完全具有可行性。
综上所述,宠物领养系统APP在技术、经济、操作和法律上都具有很高的可行性,开发此程序是可行的。
宠物领养系统APP开发时,首先进行需求分析,进而对系统进行总体的设计规划,设计系统功能模块,数据库的选择等,本系统的开发流程如图3-1所示
图3-1系统开发流程图
3.2.2 用户登录流程为了保证系统的安全性,要使用本系统对系统信息进行管理,必须先登陆到系统中。如图3-2所示。
图3-2 登录流程图
3.2.3 系统操作流程用户打开并进入系统后,会先显示登录界面,输入正确的用户名和密码,系统自动检测信息,若信息无误,则用户会进入系统功能界面,进行操作,否则会提示错误无法登录,操作流程如图3-3所示。
图3-3 系统操作流程图
3.2.4 添加信息流程管理员可以对流浪动物的信息等进行信息的添加,用户可以对自己权限内的信息进行添加,输入信息后,系统会自行验证输入的信息和数据,若信息正确,会将其添加到数据库内,若信息有误,则会提示重新输入信息,添加信息流程如图3-4所示。
图3-4 添加信息流程图
3.2.5 修改信息流程管理员可以对流浪动物信息等进行的修改,用户可以对自己权限内的信息进行修改,首先进入修改信息界面,输入修改信息数据,系统进行数据的判断验证,修改信息合法则修改成功,信息更新至数据库,信息不合法则修改失败,重新输入。修改信息流程图如图3-5所示。
图3-5 修改信息流程图
3.2.6 删除信息流程管理员可以对流浪动物管理信息等进行信息的删除,对要删除的信息进行选中后,点击删除按钮,系统会询问是否确定,若点击确定,则系统会删除掉选中的信息,并在数据库内对信息进行删除,删除信息流程图如图3-6所示。
图3-6 删除信息流程图
系统中的核心用户是系统管理员,管理员登录后,通过管理员来管理后台系统。主要功能有:首页、轮播图、公告信息、资源管理(宠物资讯、资讯分类)交流管理(交流论坛、论坛分类)系统用户(管理员、会员用户)模块管理(宠物信息、类别管理、领养信息、领养反馈)等功能。管理员用例如图3-7所示。
图3-7 管理员用例图
3.3.2用户用例图用户进入系统可以首页、交流论坛、宠物资讯、我的(基本信息、收藏、领养信息、领养反馈)等。用户用例如图3-8所示。
图3-8 用户用例图
随着用户量的增加,系统可能会需要同时服务上千、上万个页面,服务器需要同时响应大量用户的操作,这就要求系统需要有良好的可扩展性,否则系统会出现延迟,卡顿甚至服务器崩溃的问题。高扩展性可以使软件保持旺盛的生命力,同时也能够使系统更好的适应用户增加、提高性能需求、增加应用功能等改变。
系统中保存了大量用户和管理员的个人信息,因此,保证系统服务器和数据安全是在开发过程中需要考虑的重要问题。安全性包括服务器安全、操作系统安全、数据库安全、程序代码安全以及用户个人信息和支付安全等,系统可以通过采用防火墙技术、加密技术、认证技术等来增强其安全性,只有一个健壮安全的系统才能具有长久的生命力。
进过系统的分析后,就开始系统的设计,系统设计包含总体设计和详细设计。总体设计只是一个大体的设计,经过了总体设计,我们能够划分出系统的一些东西,例如文件、文档、数据等。而且我们通过总体设计,大致可以划分出了程序的模块,以及功能。但是只是一个初步的分类,并没有真正的实现。
整体设计,只是一个初步设计,而且,对于一个项目,我们可以进行多个整体设计,通过对比,包括性能的对比、成本的对比、效益的对比,来最终确定一个最优的设计方案,选择优秀的整体设计可以降低开发成本,增加公司效益,从这一点来讲,整体设计还是非常重要的。
宠物领养系统APP工作原理图如图4-1所示:
图4-1 系统工作原理图
目前B/S体系的系统主要的数据访问方式是:通过浏览器页面用户可以进入系统,系统可以自动对用户向服务器发送的请求进行处理,处理请求是在系统后台中进行的,用户在浏览器页面上进行相应操作,就能够看到服务端传递的处理结果。稿费发放管理系统主要分为视图-模型-控制三层架构设计。在视图层中,主要是操作在服务器端向客户端反馈并显示的数据,在模型层中,主要处理相关的业务逻辑、数据整合等,最后的控制层它介于视图和模型之间,主要是调整两层之间的关系,最终落实数据的传递。
系统架构图如下图所示。
图4-2系统架构图
系统设计的目的是分析系统包括的所有功能结构,为开发人员设计开发和实现系统做好准备工作。经过前期的需求调查、分析和整理之后,确定的总体需求主要包括多个模块,分别是:首页、轮播图、公告信息、资源管理(宠物资讯、资讯分类)交流管理(交流论坛、论坛分类)系统用户(管理员、会员用户)模块管理(宠物信息、类别管理、领养信息、领养反馈)。系统整体角色分为两个部分,一是操作员、二是管理员。权限分布也是很明显,操作员用户是在除去浏览信息之外还具有查询和管理自己账户信息、领养信息、领养反馈等权限;管理员是最高权限拥有者。
管理员结构图,如图4-3所示。
图4-3 系统结构图
数据库是计算机信息系统的基础。目前,电脑系统的关键与核心部分就是数据库。数据库开发的优劣对整个系统的质量和速度有着直接影响。
4.3.1 数据库设计原则数据库的概念结构设计采用实体—联系(E-R)模型设计方法。E-R模型法的组成元素有:实体、属性、联系,E-R模型用E-R图表示,是提示用户工作环境中所涉及的事物,属性则是对实体特性的描述。在系统设计当中数据库起着决定性的因素。下面设计出这几个关键实体的实体—关系图。
4.3.2 数据库实体学习编程,我们都知道数据库设计是基于需要设计的系统功能,我们需要建立一个数据库关系模型,用于存储数据信息,这样当我们在程序中时,就没有必要为程序页面添加数据,从而提高系统的效率。数据库存储了很多信息,可以说是信息管理系统的核心和基础,数据库还提供了添加、删除、修改和检查,使系统能够快速找到自己想要的信息,而不是在程序代码中找到。数据库中信息表的每个部分根据一定的关系精确地组合,排列和组合成数据表。
通过宠物领养系统APP的功能进行规划分成几个实体信息,实体信息将通过ER图进行说明,本系统的主要实体图如下:
图4-4系统ER图
4.3.3 数据库表设计数据库的表信息属于设计的一部分,下面介绍数据库中的各个表的详细信息。
表access_token (登陆访问时长)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
token_id
int
10
0
N
Y
临时访问牌ID
2
token
varchar
64
0
Y
N
临时访问牌
3
info
text
65535
0
Y
N
4
maxage
int
10
0
N
N
2
最大寿命:默认2小时
5
create_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
创建时间:
6
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间:
7
user_id
int
10
0
N
N
0
用户编号:
表adoption_feedback (领养反馈)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
adoption_feedback_id
int
10
0
N
Y
领养反馈ID
2
adoption_number
varchar
64
0
Y
N
领养编号
3
pet_name
varchar
64
0
Y
N
宠物名称
4
pet_category
varchar
64
0
Y
N
宠物类别
5
pet_sex
varchar
64
0
Y
N
宠物性别
6
pet_age
varchar
64
0
Y
N
宠物年龄
7
adoptive_user
int
10
0
Y
N
0
领养用户
8
member_name
varchar
64
0
Y
N
会员姓名
9
pet_pictures
varchar
255
0
Y
N
宠物图片
10
feedback_content
text
65535
0
Y
N
反馈内容
11
management_scoring
varchar
64
0
Y
N
管理打分
12
recommend
int
10
0
N
N
0
智能推荐
13
create_time
datetime
19
0
N
N
CURRENT_TIMESTAMP
创建时间
14
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间
表adoption_information (领养信息)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
adoption_information_id
int
10
0
N
Y
领养信息ID
2
adoption_number
varchar
64
0
Y
N
领养编号
3
pet_name
varchar
64
0
Y
N
宠物名称
4
pet_category
varchar
64
0
Y
N
宠物类别
5
pet_sex
varchar
64
0
Y
N
宠物性别
6
pet_age
varchar
64
0
Y
N
宠物年龄
7
adoptive_user
int
10
0
Y
N
0
领养用户
8
member_name
varchar
64
0
Y
N
会员姓名
9
contact_number
varchar
64
0
Y
N
联系电话
10
adoption_notes
text
65535
0
Y
N
领养备注
11
examine_state
varchar
16
0
N
N
未审核
审核状态
12
examine_reply
varchar
16
0
Y
N
审核回复
13
recommend
int
10
0
N
N
0
智能推荐
14
create_time
datetime
19
0
N
N
CURRENT_TIMESTAMP
创建时间
15
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间
表article (文章:用于内容管理系统的文章)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
article_id
mediumint
8
0
N
Y
文章id:[0,8388607]
2
title
varchar
125
0
N
Y
标题:[0,125]用于文章和html的title标签中
3
type
varchar
64
0
N
N
0
文章分类:[0,1000]用来搜索指定类型的文章
4
hits
int
10
0
N
N
0
点击数:[0,1000000000]访问这篇文章的人次
5
praise_len
int
10
0
N
N
0
点赞数
6
create_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
创建时间:
7
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间:
8
source
varchar
255
0
Y
N
来源:[0,255]文章的出处
9
url
varchar
255
0
Y
N
来源地址:[0,255]用于跳转到发布该文章的网站
10
tag
varchar
255
0
Y
N
标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开
11
content
longtext
2147483647
0
Y
N
正文:文章的主体内容
12
img
varchar
255
0
Y
N
封面图
13
description
text
65535
0
Y
N
文章描述
表article_type (文章分类)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
type_id
smallint
5
0
N
Y
分类ID:[0,10000]
2
display
smallint
5
0
N
N
100
显示顺序:[0,1000]决定分类显示的先后顺序
3
name
varchar
16
0
N
N
分类名称:[2,16]
4
father_id
smallint
5
0
N
N
0
上级分类ID:[0,32767]
5
description
varchar
255
0
Y
N
描述:[0,255]描述该分类的作用
6
icon
text
65535
0
Y
N
分类图标:
7
url
varchar
255
0
Y
N
外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置
8
create_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
创建时间:
9
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间:
表auth (用户权限管理)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
auth_id
int
10
0
N
Y
授权ID:
2
user_group
varchar
64
0
Y
N
用户组:
3
mod_name
varchar
64
0
Y
N
模块名:
4
table_name
varchar
64
0
Y
N
表名:
5
page_title
varchar
255
0
Y
N
页面标题:
6
path
varchar
255
0
Y
N
路由路径:
7
position
varchar
32
0
Y
N
位置:
8
mode
varchar
32
0
N
N
_blank
跳转方式:
9
add
tinyint
3
0
N
N
1
是否可增加:
10
del
tinyint
3
0
N
N
1
是否可删除:
11
set
tinyint
3
0
N
N
1
是否可修改:
12
get
tinyint
3
0
N
N
1
是否可查看:
13
field_add
text
65535
0
Y
N
添加字段:
14
field_set
text
65535
0
Y
N
修改字段:
15
field_get
text
65535
0
Y
N
查询字段:
16
table_nav_name
varchar
500
0
Y
N
跨表导航名称:
17
table_nav
varchar
500
0
Y
N
跨表导航:
18
option
text
65535
0
Y
N
配置:
19
create_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
创建时间:
20
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间:
表category_management (类别管理)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
category_management_id
int
10
0
N
Y
类别管理ID
2
pet_category
varchar
64
0
Y
N
宠物类别
3
recommend
int
10
0
N
N
0
智能推荐
4
create_time
datetime
19
0
N
N
CURRENT_TIMESTAMP
创建时间
5
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间
表collect (收藏)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
collect_id
int
10
0
N
Y
收藏ID:
2
user_id
int
10
0
N
N
0
收藏人ID:
3
source_table
varchar
255
0
Y
N
来源表:
4
source_field
varchar
255
0
Y
N
来源字段:
5
source_id
int
10
0
N
N
0
来源ID:
6
title
varchar
255
0
Y
N
标题:
7
img
varchar
255
0
Y
N
封面:
8
create_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
创建时间:
9
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间:
表comment (评论)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
comment_id
int
10
0
N
Y
评论ID:
2
user_id
int
10
0
N
N
0
评论人ID:
3
reply_to_id
int
10
0
N
N
0
回复评论ID:空为0
4
content
longtext
2147483647
0
Y
N
内容:
5
nickname
varchar
255
0
Y
N
昵称:
6
avatar
varchar
255
0
Y
N
头像地址:[0,255]
7
create_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
创建时间:
8
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间:
9
source_table
varchar
255
0
Y
N
来源表:
10
source_field
varchar
255
0
Y
N
来源字段:
11
source_id
int
10
0
N
N
0
来源ID:
表forum (论坛)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
forum_id
mediumint
8
0
N
Y
论坛id
2
display
smallint
5
0
N
N
100
排序
3
user_id
mediumint
8
0
N
N
0
用户ID
4
nickname
varchar
16
0
Y
N
昵称:[0,16]
5
praise_len
int
10
0
Y
N
0
点赞数
6
hits
int
10
0
N
N
0
访问数
7
title
varchar
125
0
N
N
标题
8
keywords
varchar
125
0
Y
N
关键词
9
description
varchar
255
0
Y
N
描述
10
url
varchar
255
0
Y
N
来源地址
11
tag
varchar
255
0
Y
N
标签
12
img
text
65535
0
Y
N
封面图
13
content
longtext
2147483647
0
Y
N
正文
14
create_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
创建时间:
15
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间:
16
avatar
varchar
255
0
Y
N
发帖人头像:
17
type
varchar
64
0
N
N
0
论坛分类:[0,1000]用来搜索指定类型的论坛帖
表forum_type (论坛分类)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
type_id
smallint
5
0
N
Y
分类ID:[0,10000]
2
name
varchar
16
0
N
N
分类名称:[2,16]
3
description
varchar
255
0
Y
N
描述:[0,255]描述该分类的作用
4
url
varchar
255
0
Y
N
外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置
5
father_id
smallint
5
0
N
N
0
上级分类ID:[0,32767]
6
icon
varchar
255
0
Y
N
分类图标:
7
create_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
创建时间:
8
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间:
表hits (用户点击)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
hits_id
int
10
0
N
Y
点赞ID:
2
user_id
int
10
0
N
N
0
点赞人:
3
create_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
创建时间:
4
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间:
5
source_table
varchar
255
0
Y
N
来源表:
6
source_field
varchar
255
0
Y
N
来源字段:
7
source_id
int
10
0
N
N
0
来源ID:
表member_users (会员用户)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
member_users_id
int
10
0
N
Y
会员用户ID
2
member_name
varchar
64
0
Y
N
会员姓名
3
member_gender
varchar
64
0
Y
N
会员性别
4
membership_age
varchar
64
0
Y
N
会员年龄
5
examine_state
varchar
16
0
N
N
已通过
审核状态
6
recommend
int
10
0
N
N
0
智能推荐
7
user_id
int
10
0
N
N
0
用户ID
8
create_time
datetime
19
0
N
N
CURRENT_TIMESTAMP
创建时间
9
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间
表notice (公告)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
notice_id
mediumint
8
0
N
Y
公告id:
2
title
varchar
125
0
N
N
标题:
3
content
longtext
2147483647
0
Y
N
正文:
4
create_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
创建时间:
5
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间:
表pet_information (宠物信息)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
pet_information_id
int
10
0
N
Y
宠物信息ID
2
pet_name
varchar
64
0
Y
N
宠物名称
3
pet_category
varchar
64
0
Y
N
宠物类别
4
pet_sex
varchar
64
0
Y
N
宠物性别
5
pet_age
varchar
64
0
Y
N
宠物年龄
6
pet_pictures
varchar
255
0
Y
N
宠物图片
7
introduction_to_pets
longtext
2147483647
0
Y
N
宠物介绍
8
hits
int
10
0
N
N
0
点击数
9
praise_len
int
10
0
N
N
0
点赞数
10
recommend
int
10
0
N
N
0
智能推荐
11
create_time
datetime
19
0
N
N
CURRENT_TIMESTAMP
创建时间
12
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间
表praise (点赞)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
praise_id
int
10
0
N
Y
点赞ID:
2
user_id
int
10
0
N
N
0
点赞人:
3
create_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
创建时间:
4
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间:
5
source_table
varchar
255
0
Y
N
来源表:
6
source_field
varchar
255
0
Y
N
来源字段:
7
source_id
int
10
0
N
N
0
来源ID:
8
status
bit
1
0
N
N
1
点赞状态:1为点赞,0已取消
表slides (轮播图)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
slides_id
int
10
0
N
Y
轮播图ID:
2
title
varchar
64
0
Y
N
标题:
3
content
varchar
255
0
Y
N
内容:
4
url
varchar
255
0
Y
N
链接:
5
img
varchar
255
0
Y
N
轮播图:
6
hits
int
10
0
N
N
0
点击量:
7
create_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
创建时间:
8
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间:
表upload (文件上传)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
upload_id
int
10
0
N
Y
上传ID
2
name
varchar
64
0
Y
N
文件名
3
path
varchar
255
0
Y
N
访问路径
4
file
varchar
255
0
Y
N
文件路径
5
display
varchar
255
0
Y
N
显示顺序
6
father_id
int
10
0
Y
N
0
父级ID
7
dir
varchar
255
0
Y
N
文件夹
8
type
varchar
32
0
Y
N
文件类型
表user (用户账户:用于保存用户登录信息)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
user_id
mediumint
8
0
N
Y
用户ID:[0,8388607]用户获取其他与用户相关的数据
2
state
smallint
5
0
N
N
1
账户状态:[0,10](1可用|2异常|3已冻结|4已注销)
3
user_group
varchar
32
0
Y
N
所在用户组:[0,32767]决定用户身份和权限
4
login_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
上次登录时间:
5
phone
varchar
11
0
Y
N
手机号码:[0,11]用户的手机号码,用于找回密码时或登录时
6
phone_state
smallint
5
0
N
N
0
手机认证:[0,1](0未认证|1审核中|2已认证)
7
username
varchar
16
0
N
N
用户名:[0,16]用户登录时所用的账户名称
8
nickname
varchar
16
0
Y
N
昵称:[0,16]
9
password
varchar
64
0
N
N
密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成
10
varchar
64
0
Y
N
邮箱:[0,64]用户的邮箱,用于找回密码时或登录时
11
email_state
smallint
5
0
N
N
0
邮箱认证:[0,1](0未认证|1审核中|2已认证)
12
avatar
varchar
255
0
Y
N
头像地址:[0,255]
13
create_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
创建时间:
表user_group (用户组:用于用户前端身份和鉴权)
编号
名称
数据类型
长度
小数位
允许空值
主键
默认值
说明
1
group_id
mediumint
8
0
N
Y
用户组ID:[0,8388607]
2
display
smallint
5
0
N
N
100
显示顺序:[0,1000]
3
name
varchar
16
0
N
N
名称:[0,16]
4
description
varchar
255
0
Y
N
描述:[0,255]描述该用户组的特点或权限范围
5
source_table
varchar
255
0
Y
N
来源表:
6
source_field
varchar
255
0
Y
N
来源字段:
7
source_id
int
10
0
N
N
0
来源ID:
8
register
smallint
5
0
Y
N
0
注册位置:
9
create_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
创建时间:
10
update_time
timestamp
19
0
N
N
CURRENT_TIMESTAMP
更新时间:
宠物领养系统APP,在系统首页可以查看网站首页、交流论坛、宠物资讯、我的(基本信息、收藏、领养信息、领养反馈)等内容,如图5-1所示。
交流论坛、交流论坛页面可以查看帖子标题、内容、发布日期等内容,可根据需要进行点赞或者回复等操作,如图5-2所示。
图5-2交流论坛页面界面图
宠物信息,宠物信息页面可查看展示的宠物名称、宠物类别、宠物性别、宠物年龄等信息,根据需要可对宠物进行领养申请。如图5-3所示。
图5-3宠物信息展示页界面图
领养信息,在领养信息页面可填写宠物类别、宠物性别、宠物年龄、领养用户、会员姓名、联系电话、领养用户、会员姓名、联系电话、领养用户列表,如图5-4所示。
图5-4领养信息列表界面图
管理员登录,通过填写注册时输入的用户名、密码权限进行登录,如图5-5所示。
图5-5管理员登录界面图
管理员登录进入宠物领养系统APP可以查看个系统后台首页、轮播图、公告信息、资源管理(宠物资讯、资讯分类)交流管理(交流论坛、论坛分类)系统用户(管理员、会员用户)模块管理(宠物信息、类别管理、领养信息、领养反馈)等信息。如图-5-6所示:
图5-6管理员功能界面图
系统用户管理,在系统用户管理页面中可以对管理员用户密码修改功能,如图5-7所示:
图5-7系统用户界面图
宠物信息管理,在宠物信息管理页面中可以查看宠物名称、宠物名称、宠物类别、宠物性别、宠物年龄、宠物图片、创建时间等信息,并可根据需要在宠物信息查询页面对已有的宠物信息进行编辑删除或详细等操作,如图5-8所示。
图5-8宠物信息管理界面图
领养反馈管理,在领养反馈管理页面中可以查看宠物年龄、领养用户、会员姓名、宠物图片、反馈内容、管理打分、创建时间等信息,并可根据需要在领养反馈页面对已有的领养反馈进行回复、编辑、删除或详细等操作,如图5-9所示。
图5-9领养反馈管理界面图
6系统测试
系统开发的最后一个步骤就是系统测试,系统测试也是整个系统十分重要的一个环节,测试的好坏关系到产品的发展。用户对软件的质量、性能和可靠性等需求就要通过测试来实现。测试过程要必须遵循严谨性、完善性、规范性的原则,测试的主要目的就是看看在系统运行中,是否会出现bug,然后对出现的bug进行调试,直到程序完美运行。但是软件的测试只能尽可能的减少bug,理论上来说是无法达到消除bug。但是bug越少,系统出错的几率就越低,用户使用起来也更方便、更安全。
近年来,软件包含测试从现在的检验当中来看,系统接近预期目标可能出现的问题,并对这些错误做出相应的修正,假如我们不进行早期的测试错误就会延续下去,最后所做出的成品就会有很大的困难。
我们要在这个测试的过程当中找出错误。测试成软件开发的主要一部分,自从有了程序的设计那天开始,它就成为了重要的组成部分。经过统计来看,软件测试可以占据这个系统45%的工作量,而在软件开发的成本当中,对于测试成本来说它包含了很多的测试工作。每个程序测试时都会出现和遇到错误。在整个程序的开发过程当中,人为去查找错误是非常复杂和困难的,所以我们一般都会找一些测试的工具来进行测试。
随着现代信息的快速发展,在社会各大领域中已经都开始应用网络信息技术,在应用网络技术的同时人们也开始把软件的质量问题作为了一个重要焦点来关注,因为一个软件的好与坏它决定着这个系统在市场上的生存,所以我们必须要把软件质量来做好,这样才有一定的生存能力。对于用户来说它们首先选用的都是保证这个系统软件的质量问题,因为一个系统的软件质量决定着用户在后期上成本经济的问题。图6-1就是纠错测试流程。
图6-1 测试与纠错信息流程
具体测试方法包括:黑盒测试和白盒测试。
黑盒测试又被人们称作为功能测试,通常是在程序的接口来做一些测试的方法,它一般包括对程序的功能和使用的方法来做出一些数据的接受和输出,同时还可以做出正确的输出信息,并保证与外部信息的完整性。
白盒测试通常被人们称作为结构测试,在整个程序的结构和处理当中它是由程序当中的逻辑测试和检验程序来完成一些正确的工作。
具体的功能测试它是包括:系统的适用性、准确性、安全性等功能测试。
本宠物领养系统APP满足相关信息的管理需求,在设计时借鉴了国内外优秀网站的优点,从界面到系统设计都保证了管理员以及用户能够方便操作。系统的主要特点和优点归纳如下:
(1)本系统用的移置性和针对性都比较高,因为针对性高可以提供更好的服务而移置性可以在多个系统上运行,更给用户带来了极大的方便。
(2)该宠物领养系统APP内容全面,管理方便可以及时的全面的处理各种错误,异常,这样避免了很多因用户的马虎操作而出现的失误,其操作方便,用户界面友好,能够上网的人都可以很好的进行操作。
经过对上述的测试结果分析,所有基本功能齐全,操作简单,系统运行性能良好,系统安全可靠,能促进宠物领养系统APP平台的发展,发展前景广阔。
[1]Paul Krill. Oracle per-employee Java licensing could benefit rivals[J]. InfoWorld.com,2023.
[2]Paul Krill. JavaScript, Java, and Python skills top demand[J]. InfoWorld.com,2023.
[3]王平泉,逯小青.JAVA程序设计课程的PBL教学模式实践[J].集成电路应用,2023,40(01):90-91.DOI:10.19339/j.issn.1674-2583.2023.01.034.
[4]罗压琼.APP软件用户反馈分析方法技术研究与实现[J].现代电子技术,2022,45(24):161-165.DOI:10.16652/j.issn.1004-373x.2022.24.030.
[5]罗压琼,姜瑛,陈泳全.APP软件用户评论中评价对象和评价观点的匹配[J].现代电子技术,2022,45(22):126-132.DOI:10.16652/j.issn.1004-373x.2022.22.024.
[6]郑歆.Java程序设计课程的教学实践[J].集成电路应用,2022,39(11):94-95.DOI:10.19339/j.issn.1674-2583.2022.11.036.
[7]任浩然,刘丹,景永强.JAVA在计算机软件开发中的应用研究[J].信息记录材料,2022,23(11):83-85.DOI:10.16009/j.cnki.cn13-1295/tq.2022.11.072.
[8]曹柯欣,崔新龙,黄琪,陈晓.基于Andriod的语音控制翻译软件APP[J].电脑编程技巧与维护,2022(07):59-61.DOI:10.16184/j.cnki.comprg.2022.07.011.
[9]姜秀云.领养一只完美的宠物[J].疯狂英语(新悦读),2022(07):38-39+76.
[10]周芄. App用户评论中新兴主题识别研究[D].安徽工程大学,2022.DOI:10.27763/d.cnki.gahgc.2022.000313.
[11]郜山权. 面向安卓移动应用的推荐问题研究[D].吉林大学,2022.DOI:10.27162/d.cnki.gjlin.2022.000384.
[12]赵鑫欣. 手机APP软件中的个人信息保护问题分析[D].黑龙江大学,2022.DOI:10.27123/d.cnki.ghlju.2022.000459.
[13]李喻.宠物领养也“配对”[J].销售与市场(管理版),2022(03):102.
[14]刘斌,李婧.现场评分App软件的技术方案研究[J].信息技术与信息化,2022(02):29-32.
[15]金馨. 基于SSM的宠物店线上运营系统的设计与实现[D].首都经济贸易大学,2021.DOI:10.27338/d.cnki.gsjmu.2021.000769.
[16]Wang Haoran. Research on Basic Programming System of Computer Science Mobile APP Software Engineering[J]. Journal of Physics: Conference Series,2021,1952(4).
[17]周粉妹,吴仁平,钱荣华,陈思.基于SSM的宠物领养网站设计[J].扬州职业大学学报,2021,25(01):32-35.DOI:10.15954/j.cnki.cn32-1529/g4.2021.01.009.
[18]杨芹. 宠物领养Web App的设计与实现[D].华中科技大学,2020.DOI:10.27157/d.cnki.ghzku.2020.006892.
[19]Franc Sylvia,Hanaire Helene,Benhamou Pierre Yves,Schaepelynck Pauline,Catargi Bogdan,Farret Anne,Fontaine Pierre,Guerci Bruno,Reznik Yves,Jeandidier Nathalie,Penfornis Alfred,Borot Sophie,Chaillous Lucy,Serusclat Pierre,Kherbachi Yacine,d'Orsay Geneviève,Detournay Bruno,Simon Pierre,Charpentier Guillaume. DIABEO System Combining a Mobile App Software with and without Telemonitoring versus Standard Care: A Randomized Controlled Trial in Diabetic Patients Poorly Controlled with a Basal-Bolus Insulin Regimen.[J]. Diabetes technology & therapeutics,2020,22(12).
[20]杨华. 基于SSM的宠物店信息系统的设计与实现[D].吉林大学,2019.
相关知识
SSM宠物领养系统APP 计算机毕设源码48717
java/jsp/ssm流浪动物领养系统【2024年毕设】
java/jsp/ssm洗浴预约服务系统【2024年毕设】
java/jsp/ssm宠物托管所托管服务系统【2024年毕设】
[附源码]宠物领养管理系统696729计算机毕设JSP
java/php/node.js/python宠物信息管理系统【2024年毕设】
java毕设安卓宠物app(开题+源码)
【附源码】基于JavaWeb的宠物领养管理系统的设计与实现b98ry9计算机毕设SSM
计算机毕业设计ssm宠物交流平台1n2n39(附源码)新手必备
机器学习毕业论文(毕设)方向怎么选
网址: SSM宠物领养系统APP 计算机毕设源码48717 https://m.mcbbbk.com/newsview89387.html
上一篇: 宠物强化 |
下一篇: 训犬师培训的费用大概需要多少钱? |