基于Java Web 的家乡特色菜推荐系统

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

🍅文末获取源码联系🍅

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

2022-2024年最全的计算机软件毕业设计选题大全:1000个热门选题推荐✅

Java项目精品实战案例《100套》

Java微信小程序项目实战《100套》

Python项目实战《100套》

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

文章目录

文章目录

1. 简介

基于Java 的家乡特色菜推荐系统,基于 SpringBoot+Vue 开发的,功能完整,包括源码和部署教程。可用于毕业设计和课程设计

本次设计任务是要设计一个家乡特色推荐系统,通过这个系统能够满足家乡特色文章的管理功能。系统的主要功能包括首页,个人中心,用户管理,文章分类管理,文章分享管理,系统管理等。

管理员可以根据系统给定的账号进行登录,登录后可以进入家乡特色推荐系统,对所有模块进行管理。包括查看和修改自己的个人信息以及登录密码。

该系统为每一个用户都分配了一个用户账号,用户通过账号的登录可以在系统中查看家乡特色文章信息及对个人信息进行修改等功能

2. 技术栈

开发语言:Java

框架:springboot

JDK版本:JDK1.8

服务器:tomcat7

数据库:mysql 5.7(一定要5.7版本)

数据库工具:Navicat11

开发软件:eclipse/myeclipse/idea

Maven包:Maven3.3.9

浏览器:谷歌浏览器

3. 系统流程分析

家乡特色推荐系统是两种身份的用户,主要涉及管理员和用户。每个身份都是操作起来都是清楚方便的。对于一些家乡特色文章信息,这是任何人都可以查看的,但是如果用户想进入后台进行操作,则必须是已经进行登录的用户,或者想修改家乡特色文章信息的话,也是需要用户为登录状态。这些用户的基本信息都由管理员对其统一管理。

根据家乡特色文章实际过程的分析,网站有以下几个部分,其中用户注册,发布个人信息,修改个人信息;用户注册登录,发布家乡特色文章信息;管理员管理用户信息。以上业务过程从用户角度可以分为两类使用本系统的用户角色,包括管理员和用户。以下针对各类用户说明相应的业务过程。

系统用例图如下图3-2所示:

4系统设计

家乡特色菜管理系统包括前后端的所有代码,还有论文,如果有需要的话,可以点击查看源码地址

4.1数据库设计

信息管理系统的效率和实现的效果完全取决于数据库结构设计的好坏。为了保证数据的完整性,提高数据库存储的效率,那么统一合理地设计数据库结构是必要的。数据库设计一般包括如下几个步骤:

(1)根据用户需求,确定数据库信息进行保存

对用户的需求分析是数据库设计的第一阶段,用户的需求调研,熟悉小区运作流程,系统要求,这些都是以概念模型为基础的。

(2)设计数据的概念模型

概念模型与数据建模用户的观点一致,用于信息世界的建模工具。通过E-R图可以清楚地描述系统涉及到的实体之间的相互关系。

用户注册实体图如图4-1所示:

图4-1用户注册实体图

文章分享实体图如图4-2所示:

图4-2文章分享实体图

(3)数据库逻辑结构分析

数据库概念结构设计后,可以数据库概念转化实际的数据模型,这是一种数据库的逻辑结构,就是将概念结构与支持数据库管理系统的模型相符合。具体的表设计如下所示:

表4-1:用户表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
username varchar 100 用户名
password varchar 100 密码
role varchar 100 角色 管理员
addtime timestamp 新增时间 CURRENT_TIMESTAMP

表4-2: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-3:收藏表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 收藏id
tablename varchar 200 表名
name varchar 200 收藏名称
picture varchar 200 收藏图片
type varchar 200 类型(1:收藏,21:赞,22:踩) 1
inteltype varchar 200 推荐类型

表4-4:资讯信息

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture varchar 200 图片
content longtext 4294967295 内容

表4-5:文章分享评论表

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
refid bigint 关联表id
userid bigint 用户id
nickname varchar 200 用户名
content longtext 4294967295 评论内容
reply longtext 4294967295 回复内容

表4-6:配置文件

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
name varchar 100 配置参数名称
value varchar 100 配置参数值

表4-7:用户

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuming varchar 200 用户名
xingming varchar 200 姓名
touxiang varchar 200 头像
mima varchar 200 密码
xingbie varchar 200 性别
shouji varchar 200 手机
sfsh varchar 200 是否审核
shhf longtext 4294967295 审核回复

表4-8:文章分享

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
biaoti varchar 200 标题
tupian varchar 200 图片
wenzhangfenlei varchar 200 文章分类
jianshu varchar 200 简述
wenzhangxiangqing longtext 4294967295 文章详情
fabushijian datetime 发布时间
yonghuming varchar 200 用户名
xingming varchar 200 姓名
sfsh varchar 200 是否审核
shhf longtext 4294967295 审核回复
clicktime datetime 最近点击时间
clicknum int 点击次数 0

表4-9:文章分类

字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
wenzhangfenlei varchar 200 文章分类

4.2系统整体设计

4.2.1系统设计思想

系统确定了各项需求,完成了系统的分析和数据库的设计,它就可以根据网站的特点决定网站的发展模式,才能实现代码。通过对网站的分析,这个网站是属于一个小项目,所完成的功能相对简单,就是对数据的基本操作。从而决定采用B/S开发模式。该模型的基本过程是:当用户访问网站的浏览器,或从用户向服务器发送请求时,通过接收请求,然后调用数据访问逻辑运算如比,将结果返回给将结果返回到用户通过浏览器。

使用开发的模型时,我们要把一些常用的,可以重复使用了java技术。当用户浏览网页,很多网页上的信息是从数据库动态删除,这就要求网页必须有数据库操作的能力,如连接数据库和数据表,更新。一个网站包含多个相同的网页,实现数据库操作功能的、代码就需要在不一样的网页中重复的被使用,这样不仅降低了工作的效率,一般也会给维护带来较大的麻烦。为了弥补这一缺陷,功能代码应该在java中完整的数据库操作,可以使用在每一个页面上。

4.2.2系统流程图

下图是用户进入这个家乡特色推荐系统后,基本的操作流程。

5系统详细设计

5.1系统功能模块

家乡特色推荐系统,在系统首页可以查看首页,文章分享,资讯信息,个人中心,后台管理等内容进行详细操作,如图5-1所示。

用户注册,在用户注册页面通过填写用户名,密码,确认密码,姓名,手机等信息完成用户注册,如图5-2所示。

文章分享,在文章分享页面可以查看文章分类,简述,发布时间,用户名,姓名,点击次数等详细内容,并进行评论和收藏操作,如图5-3所示。

个人中心,在个人中心页面通过填写用户名,姓名,图片,密码,性别,手机等信息进行更新信息,根据需要对我的收藏进行详细操作,如图5-4所示。

图5-4个人中心界面图

5.2管理员功能模块

管理员登录,进入系统前在登录页面根据要求填写用户名和密码,选择角色等信息,点击登录进行登录操作,如图5-5所示。

图5-5管理员登录界面图

管理员登录系统后,可以对首页,个人中心,用户管理,文章分类管理,文章分享管理,系统管理等功能模块进行相应操作,如图5-6所示。

用户管理,在用户管理页面可以对索引,用户名,姓名,头像,性别,手机,审核回复,审核状态,审核等信息进行详情,修改和删除等操作,如图5-7所示。

图5-7用户管理界面图

文章分类管理,在文章分类管理页面可以对索引,文章分类等内容进行详情,修改和删除等操作,如图5-8所示。

图5-8文章分类管理界面图

文章分享管理,在文章分享管理页面可以对索引,标题,图片,文章分类,简述,发布时间,用户名,姓名,审核回复,审核状态等内容进行详情,修改,查看评论和删除操作,如图5-9所示。

6 源码获取

大家点赞、收藏、关注、评论 啦 、查看 👇🏻获取联系方式👇🏻

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

2022-2024年最全的计算机软件毕业设计选题大全:1000个热门选题推荐✅

Java项目精品实战案例《100套》

Java微信小程序项目实战《100套》

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

相关推荐
香蕉你个不拿拿^4 分钟前
【C++】中Vector与List的比较
开发语言·c++
Dream_Snowar4 分钟前
全国高校计算机能力挑战赛区域赛2019C++选择题题解
开发语言·c++
破浪前行·吴4 分钟前
【学习】【HTML】localStorage、sessionStorage、cookie
前端·学习·html
Natural_yz7 分钟前
大数据学习15之Scala集合与泛型
开发语言·学习·scala
新中地GIS开发老师11 分钟前
GIS开发到底能应用在哪些行业 ?
java·javascript·arcgis·前端框架·echarts
虞书欣的617 分钟前
Python小游戏27——飞翔的小鸟
开发语言·人工智能·游戏·pycharm·pygame
AntBlack24 分钟前
这篇绝不是标题党 :太好用了 , 一天就能快速实现一个可创业小项目
前端·后端·python
scoone28 分钟前
Rust 中的 match 基本用法
开发语言·后端·rust
黑客Ela30 分钟前
计算机网络——网络安全
开发语言·php
前端Hardy38 分钟前
探索 HTML 和 CSS 实现的蜡烛火焰
前端·javascript·css·html·css3