摘要
伴随着我国社会的发展,人民生活质量日益提高。互联网逐步进入千家万户,改变传统的管理方式,以互联网为基础,利用java技术,结合Spring Boot框架和MySQL数据库开发设计一套跳蚤市场,提高工作效率的同时,减轻管理者工作方面的压力,使他们能够将更多精力投入到市场上,更好的完成用户的核心业务。
技术介绍
在这一章中,主要是罗列出实现系统将采用的技术框架并对其做简单介绍。本论文中的跳蚤市场使用当下主流的java开发。系统前端的业务逻辑以及数据展示使用Spring Boot框架技术来实现,系统的底层数据库选用了关系型数据库MySQL。
2.1 Android Studio介绍
Android Stuido是Google公司在2013年推出一款开源的、跨平台的安卓集成开发环境,它可以运行在Windows、Linux和OSX等操作系统上,专门为Android开发而设计打造的软件,是一款以IDEA为基础的,为安卓开发提供便利而改造的IDE,除去开源免费跨平台的优势外,选择它作为主要开发工具的理由还有很多。与IDEA和Eclipse相比,它具有以下优势:
(1)UI界面更漂亮,主题也变得丰富,并且支持背景自定义。
(2)软件启动速度、响应速度、内存占用都得到了很大提升。
(3)功能更加强大,Eclipse经常卡顿的问题在它身上不会出现。
(4)软件的提示补全功能更加智能,开发效率得到很大的提升。
(5)它还支持用户定义智能保存,再也不用手动保存了。
(6)软件还支持用户实时预览,开发者可以一边开发一边预览,大大提高了用户开发和调试的效率。
(7)完美的内置了兼容了命令行终端,对于喜欢命令行终端使用的人来说,也是一大福音。
(8)含有丰富的插件库,可以选择很多可提升工作效率的插件,搜索点击就可完成安装。
(9)具有完美的版本控制工具,如Git、SVN等。
2.2 java介绍
Java是使用最广泛的语言之一。它的代码是开源的,任何软件开发人员都可以使用。
Java语言有很多功能,它的代码非常简单,并且有很多编写方法。它具有良好的对象定向性,对平台的使用要求不高。所有平台都可以以高安全性能运行,因此非常适合系统开发。
Java平台可以声明无限制,并且可以在任何平台上运行。不需要用其他语言编辑的代码将运行。
2.3 MySQL数据库
MySQL是一个小型,廉价,快速的开源数据库。本系统对大量的数据进行了全面的支持,可以同时处理数百万的数据,在调试、管理、优化等方面都有较大的优势。它支持 SQL语句的通用规格,使用非常灵活和安全的授权和口令。虽然 Sql服务器易于使用,并且可以存储大量的数据,但是它比 MS Sql服务器要好得多。但是在网络连接的速度上,无法实现实时、高效的目的。因此,尽管 MySql有很大的缺陷,但是它的可移植性,支持多线程,优化查询算法,这使得 MySql在个人和中小型企业中非常流行[8]。
2.4 Spring Boot框架介绍
Spring Boot是近几年最为流行的后台开发框架,它的诞生一改过去Spring框架开发中繁琐的配置,极大地简化了Spring应用的搭建和开发。Spring Boot框架不仅保有了Spring框架中的所有优秀特性,还通过使用特定的配置方式,在底层帮助开发人员在工程创建是就预先做了很多配置,这样在开发时就不再需要开发人员过多进行繁琐的配置了。另外在Spring Boot中集成了大量框架,这就使得开发人员不再需要到处寻找在导入开发中需要依赖的jar包,同时也解决了依赖包版本冲突问题,从而提高了依赖包引用的稳定性,从而实现了对Spring应用搭建和开发过程的简化。
在此基础上,通过使用Maven插件,让开发人员用Spring Boot就可以完成可执行WARs和JARs的创建,Spring Boot还直接嵌入了Tomcat、Jetty等web服务器,通过使用自动生成的starter项目对象模型简化了Maven的配置,并且具有诸如指标、健康检查等特性,而且Spring Boot会尽可能实现对Spring容器的自动配置,而没有代码生成,也就不再需要XML配置了。
Spring Boot框架采用了两个非常重要的策略,他们分别是:
(1)开箱即用(Out Of Box),意思是开发过程中,将所有需要导入的依赖通过使用Maven插件导入到项目中,同时使用注解而不再是XML配置文件统一配置管理对象的生命周期。这一策略减少了开发过程中复杂的配置也简化了对程序中所有依赖的管理,使开发人员能够将更多经历投入到业务逻辑层的开发。
(2)约定优于配置(Convention over configuration),这一策略就是将目标结构交给Spring Boot来配置,而开发者只需要定义软件开发中信息的规范。使用这个策略虽然使程序开发丧失了一部分灵活性,同时还让BUG定位的难度变大了,但却减少了开发人员在原有开发模式下必须进行的大量XML配置,从而让代码编译、测试和打包等工作能够自动完成。
2.5本章小结
在本章中,详细介绍了本论文中实现的跳蚤市场所采用的技术,描述了对mysql数据库,java技术和Spring Boot框架的介绍。对上述技术的研究和应用,可以为程序后续的顺利开发提供帮助,在简化程序开发的同时提高开发效率和质量。
需求分析
在这一章中将对本论文要实现的跳蚤市场进行详尽的需求分析,本章内容主要涵盖了对系统预期应用环境的分析,对系统功能和性能需求的分析,最后还有对系统的非功能性需求以及业务流程的分析。这一章的内容将为之后的系统设计和实现提供可靠依据,是系统完整可靠实现的重要保障。
3.1可行性分析
3.1.1经济可行性分析
本系统所需要用到的所以的工具都是开源,不收费的,并且本系统因为不具有太过于复杂的结构,用户维护系统的费用也不高。所以,本系统的经济可行性是可行的。
3.1.2技术可行性分析
该论文中跳蚤市场将被实现为采用 B/S架构,主要使用java语言进行系统后端开发,同时选用MySQL作为持久层交互的数据库,系统同时使用Spring Boot框架,使开发过程能够变得高效简便。这里采用的MVC 三层架构,将业务逻辑、数据存取、界面显示分离开的程序开发模式,使用这种模式进行开发、组织代码,可以将所有的业务逻辑整合到一个实体类中,这样的话在有新需求提出或者某个需求需要进行变更的时候,不需要大量的修改程序,只需要找到对应的功能模块进行修改,这极大地方便了程序的维护,提高了程序的可扩展性。
3.2系统需求分析
3.2.1功能需求
本论文中实现的跳蚤市场将以用户核心的日常信息维护工作为主,主要涵盖了系统首页、个人中心、用户管理、商品分类管理、商品信息管理、订单信息管理、求购信息管理、联系信息管理、回复信息管理、通知信息管理、系统管理等功能,采用该跳蚤市场将满足管理员和用户日常管理工作的基本需求。本系统与管理员和用户操作的全过程相契合,从管理员和用户登录开始录入系统,然后记录跳蚤市场信息,从而让管理员和用户对系统的管理都能够清晰规范,相应信息的检索和维护简单高效,进而提高用户整体工作的效率。系统用户用例如下:
登录流程
登录流程如图3-4所示
个人中心管理流程
个人中心管理流程如图3-5所示:
系统设计
通过前三章的分析说明,本论文中跳蚤市场已经具有了良好的实现基础,目前的第四章将对系统的具体实现进行说明介绍。
4.1系统结构设计
随着互联网的兴起以及国内外许多B/S架构的优秀系统被广泛使用而变得流行,B/S架构成为了系统开发的主流。本论文中的跳蚤市场也同样采用了B/S架构标准的三层架构,即将整个系统划分为表现层、业务层和持久层这三层,并且在表现层采用MVC设计模型。
采用B/S架构,整个系统的核心业务逻辑都被放在服务器端,使得开发过程变得方便。虽然这会使得服务器端的压力较大,但在Ajax等技术兴起后,在前端也就是浏览器端也可以实现部分业务逻辑,一定程度上分担了服务器的压力。
功能图
数据库
数据库表结构
本论文中的跳蚤市场采用MySQL数据库,系统中的所有对象以及对象的所有属性都将在下列表格中展现。
表4-1:token表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
userid bigint 用户id
username varchar 100 用户名
tablename varchar 100 表名
role varchar 100 角色
token varchar 200 密码
addtime timestamp 新增时间 CURRENT_TIMESTAMP
expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP
表4-2:用户表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP
表4-3:配置文件
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
name varchar 100 配置参数名称
value varchar 100 配置参数值
表4-4:通知信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuzhanghao varchar 200 用户账号
yonghuxingming varchar 200 用户姓名
tongzhibiaoti varchar 200 通知标题
tongzhifengmian longtext 4294967295 通知封面
tongzhishijian datetime 通知时间
tongzhineirong longtext 4294967295 通知内容
表4-5:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 商品id
tablename varchar 200 表名
name varchar 200 名称
picture longtext 4294967295 图片
type varchar 200 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) 1
inteltype varchar 200 推荐类型
remark varchar 200 备注
表4-6:商品信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuzhanghao varchar 200 卖家账号
yonghuxingming varchar 200 卖家姓名
lianxifangshi varchar 200 联系方式
shangpinmingcheng varchar 200 商品名称
shangpinfenlei varchar 200 商品分类
shangpinpinpai varchar 200 商品品牌
shangpinguige varchar 200 商品规格
shangpinjiage float 商品价格
shangpinshuliang int 商品数量
xinjiuchengdu varchar 200 新旧程度
shangpintupian longtext 4294967295 商品图片
shangjiariqi date 上架日期
shangpinjieshao longtext 4294967295 商品介绍
clicktime datetime 最近点击时间
clicknum int 点击次数 0
表4-7:商品分类
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
shangpinfenlei varchar 200 商品分类
表4-8:求购信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuzhanghao varchar 200 求购人账号
yonghuxingming varchar 200 求购人姓名
shoujihao varchar 200 手机号
shangpinmingcheng varchar 200 商品名称
shangpinfenlei varchar 200 商品分类
tupian longtext 4294967295 图片
xuqiushuliang int 需求数量
jieshoujiage float 接受价格
qiugouyixiang varchar 200 求购意向
yaoqiuxiangqing longtext 4294967295 要求详情
clicktime datetime 最近点击时间
clicknum int 点击次数 0
表4-9:公告信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容
表4-10:联系信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuzhanghao varchar 200 求购人账号
yonghuxingming varchar 200 求购人姓名
shoujihao varchar 200 手机号
shangpinmingcheng varchar 200 商品名称
shangpinfenlei varchar 200 商品分类
tupian longtext 4294967295 图片
xuqiushuliang int 需求数量
jieshoujiage float 接受价格
lianxirenzhanghao varchar 200 联系人账号
lianxirenxingming varchar 200 联系人姓名
lianxishijian datetime 联系时间
lianxineirong longtext 4294967295 联系内容
表4-11:回复信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuzhanghao varchar 200 求购人账号
yonghuxingming varchar 200 求购人姓名
shoujihao varchar 200 手机号
shangpinmingcheng varchar 200 商品名称
shangpinfenlei varchar 200 商品分类
tupian longtext 4294967295 图片
xuqiushuliang int 需求数量
jieshoujiage float 接受价格
lianxirenzhanghao varchar 200 联系人账号
lianxirenxingming varchar 200 联系人姓名
huifushijian datetime 回复时间
huifuneirong longtext 4294967295 回复内容
表4-12:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuzhanghao varchar 200 用户账号
mima varchar 200 密码
yonghuxingming varchar 200 用户姓名
xingbie varchar 200 性别
nianling varchar 200 年龄
youxiang varchar 200 邮箱
shoujihao varchar 200 手机号
shenfenzheng varchar 200 身份证
touxiang longtext 4294967295 头像
表4-13:订单信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuzhanghao varchar 200 卖家账号
yonghuxingming varchar 200 卖家姓名
lianxifangshi varchar 200 联系方式
shangpinmingcheng varchar 200 商品名称
shangpinfenlei varchar 200 商品分类
shangpinpinpai varchar 200 商品品牌
shangpinguige varchar 200 商品规格
xinjiuchengdu varchar 200 新旧程度
shangpintupian longtext 4294967295 商品图片
shangpinjiage float 商品价格
shangpinshuliang int 购买数量
zongfeiyong float 总费用
goumaishijian date 购买时间
goumaibeizhu varchar 200 购买备注
goumairenzhanghao varchar 200 购买人账号
goumairenxingming varchar 200 购买人姓名
shoujihao varchar 200 手机号
ispay varchar 200 是否支付 未支付
系统实现
5.1 前台功能的实现
5.1.1 登录注册界面的实现
首先双击打开跳蚤市场,连上网络之后会显示出本系统的登录界面,这是进入跳蚤市场的第初始页面“登录”,能成功进入到该登录界面则代表跳蚤市场的开启是成功的,接下来就可以操作本系统所带有的其他所有的功能。登录界面如图5-1所示。
第一次使用跳蚤市场的使用者,首先是要进行注册,点击“注册”,然后就会进入到注册的页面里面,将用户信息录入注册表,确认信息正确后,系统才会进入登录界面,用户登录成功后可使用跳蚤市场所提供的所有功能。注册界面如图5-2所示。
5.1.2 首页功能的实现
首页是用户注册登录后进入的第一个界面,用户可通过跳蚤市场首页的最下面的那一行导航栏进入到相应的网页进行操作;首页界面如图5-3所示。
商品信息:在商品信息界面的输入栏中输入商品名称进行搜索,可以查看到商品名称、商品分类、商品品牌、新旧程度、卖家账号、卖家姓名、联系方式、商品规格、商品价格、商品数量、上架日期、点击次数等详细信息,并进行查看商品介绍、购买等操作。商品信息详情如图5-4所示。
求购信息:在求购信息界面的输入栏中输入商品名称进行搜索,可以查看到商品名称、商品分类、求购人账号、求购人姓名、手机号、需求数量、接受价格、求购意向、点击次数等详细信息,并进行查看要求详情、联系等操作。求购信息详情如图5-5所示。
点击“我的”进入用户功能页面,在用户功能页面可以对商品信息、订单信息、求购信息、联系信息、回复信息、通知信息、我的收藏管理等进行详细操作。用户功能界面如图5-6所示。
5.2 后台管理员功能的实现
管理员登录,在登录页面正确输入用户名和密码后,点击登录进入操作系统进行操作,如图5-7所示。
管理员登录进入系统可以对系统首页、个人中心、用户管理、商品分类管理、商品信息管理、订单信息管理、求购信息管理、联系信息管理、回复信息管理、通知信息管理、系统管理等功能进行详细操作,如图5-8所示。
用户管理:管理员点击用户管理。在用户管理页面输入用户账号和用户姓名进行查询、新增或删除用户列表,并根据需要对用户详细信息进行详情、修改和删除操作;如图5-9所示。
商品信息管理:管理员点击商品信息管理。在商品信息页面输入商品名称,选择商品分类,输入商品品牌,选择新旧程度进行查询或删除商品信息列表,并根据需要对商品信息详细信息进行详情、修改和删除操作;如图5-10所示。
订单信息管理:管理员点击订单信息管理。在订单信息页面输入商品名称、商品分类进行查询或删除订单信息列表,并根据需要对订单信息详细信息进行详情、修改和删除操作;如图5-11所示。
求购信息管理:管理员点击求购信息管理。在求购信息页面输入商品名称进行查询或删除求购信息列表,并根据需要对求购信息详细信息进行详情、修改和删除操作;如图5-12所示。
联系信息管理:管理员点击联系信息管理。在联系信息页面输入商品名称进行查询或删除联系信息列表,并根据需要对联系信息详细信息进行详情、修改和删除操作;如图5-13所示。
回复信息管理:管理员点击回复信息管理。在回复信息页面输入商品名称进行查询或删除回复信息列表,并根据需要对回复信息详细信息进行详情、修改和删除操作;如图5-14所示。
通知信息管理:管理员点击通知信息管理。在通知信息页面输入用户姓名进行查询、新增或删除通知信息列表,并根据需要对通知信息详细信息进行详情、修改和删除操作;如图5-15所示。
系统管理:管理员点击系统管理。在公告信息页面输入标题进行查询、新增或删除公告信息列表,并根据需要对公告信息详细信息进行详情、修改和删除操作,还可以对轮播图管理进行详细操作;如图5-16所示。
说明文档
开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql 5.7(一定要5.7版本)
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven3.3.9
浏览器:谷歌浏览器
配置环境安装包:
Java配置环境链接:https://cloud.189.cn/t/baeQZrAjEvyy (访问码:pfd5)
后台路径地址:localhost:8080/项目名称/admin/dist/index.html
前台路径地址:localhost:8080/项目名称/front/dist/index.html (无前台不需要输入)
管理员账号:admin
管理员密码:admin
联系
q:969060742 完整代码、sql、报告、程序资源
标签:跳蚤市场,基于,varchar,200,求购,信息管理,用户,Android,主键
From: https://blog.csdn.net/m0_58065010/article/details/139317806