您现在的位置是:首页 > 正文

基于ruoyi框架实现的短链接生成管理系统(前后端分离)

2024-02-29 17:13:37阅读 1

一、为什么要开发短链接管理系统?有什么好处?

普通链接地址,也就是长链接地址,缺点就是太长,不便于传播。所以就衍生 出了短链接,具体好处如下:

  • 1、短链接更短,占用字符数更少,简短易用,易于传播;

  • 2、短链接可在各大平台传播,有效避免日常分享链接被其他平台屏蔽风险;

  • 3、短链接可实时统计用户数据,全景统计用户行为、偏好等数据;

二、技术栈说明

后端:springboot+mybatis+jwt+spring security
前端:vue
数据库:mysql
工具:navicat 、 idea

三、系统功能

系统用户分为普通用户和管理员
具体功能如下:
登录页面
首页
短链接生成页面
短链接管理页面
访问日志页面
统计面板页面:统计当前总连接数、统计所有连接今日产生的总点击量和总IP数、昨日产生的总点击量和总IP数、近七日总点击量和总IP数。
echarts统计图:统计操作系统饼图、统计浏览器饼图、统计访问量折线图
用户管理
角色管理
菜单管理等功能

四、页面功能说明

登录页面
在这里插入图片描述
系统首页展示了短链接的生成页面,用户可以输入将要缩短的长网址,点击生成按钮,后台会将短链接结果返回,并展示到输入框界面中。然后,用户就可以直接使用短链接来访问所需要的页面。
在这里插入图片描述
生成效果如下:
在这里插入图片描述
短链接管理页面
在这里插入图片描述
删除短链接
在这里插入图片描述
修改短链接
在这里插入图片描述
统计面板信息:点击 统计面板 菜单,后台系统会将用户的短链接相关信息,以卡片的形式展示出来。该页面主要是对短链接的访问量、短链接数量进行不同时间维度的统计。
在这里插入图片描述
当前总链接数统计详情:点击 当前总连接数 卡片 的查看详情按钮,会展示出系统中所有的短链接信息。
在这里插入图片描述
今日短链接访问量详情
点击 所有连接今日产生的总点击量 卡片 的查看详情按钮,系统会统计出今日所有的短链接访问量,包括 用户使用的浏览器、操作系统、登录时间、用户主机、短链接地址等信息。
在这里插入图片描述
今日短链接ip数统计
点击 所有短链接今日点击的总IP数 卡片 的查看详情按钮,系统会统计出今日所有的短链接访问的IP数量(去重之后的IP数量)。
在这里插入图片描述
昨日短链接访问量详情
点击 所有连接昨日产生的总点击量 卡片 的查看详情按钮,系统会统计出今日所有的短链接访问量,包括 用户使用的浏览器、操作系统、登录时间、用户主机、短链接地址等信息。
在这里插入图片描述
昨日短链接ip数统计
点击 所有短链接昨日点击的总IP数 卡片 的查看详情按钮,系统会统计出今日所有的短链接访问的IP数量(去重之后的IP数量)。
在这里插入图片描述
近七日短链接访问量详情
点击 所有连接过去七日产生的总点击量 卡片 的查看详情按钮,系统会统计出今日所有的短链接访问量,包括 用户使用的浏览器、操作系统、登录时间、用户主机、短链接地址等信息。
在这里插入图片描述
近七日短链接ip数统计
点击 所有短链接过去七日点击的总IP数 卡片 的查看详情按钮,系统会统计出今日所有的短链接访问的IP数量(去重之后的IP数量)。
在这里插入图片描述
访问日志
点击 访问日志 菜单,后台系统会将用户访问短链接的日志信息进行实时的记录,包括短链接,访问IP地址,浏览器类型,操作系统,访问时间等信息。
在这里插入图片描述
Echarts统计图
根据不同的维度,对用户访问短链接的信息进行统计和汇总
在这里插入图片描述
统计操作系统饼图
统计各个操作系统的访问次数。
在这里插入图片描述
统计浏览器饼图
统计各个浏览器的访问次数。
在这里插入图片描述
访问量折线图
统计各个时间段,用户的访问量大小
在这里插入图片描述

五、数据库

一共21张表
在这里插入图片描述

六、源码地址

https://download.csdn.net/download/weixin_43860634/88486987

网站文章

  • LeetCode 575. 分糖果(set集合去重)

    LeetCode 575. 分糖果(set集合去重)

    1. 题目 给定一个偶数长度的数组,其中不同的数字代表着不同种类的糖果,每一个数字代表一个糖果。你需要把这些糖果平均分给一个弟弟和一个妹妹。返回妹妹可以获得的最大糖果的种类数。 输入: candies = [1,1,2,2,3,3] 输出: 3 解析: 一共有三种种类的糖果,每一种都有两个。 最优分配方案:妹妹获得[1,2,3],弟弟也获得[1,2,3]。 这样使妹妹获得糖果的...

    2024-02-29 17:13:09
  • 汉诺塔 python 解法

    汉诺塔 python 解法将n个盘片从x 转移到z, y是中介。可以分解符为3步:将x上面n-1个盘片转移到y;将x 最底部的盘片转移到z;将y上的n-1个盘片转移到z;step = 0# x -->...

    2024-02-29 17:13:01
  • 以京东首页为例,设计用例框架。

    以京东首页为例,设计用例框架。

    a. 浏览商品列表:验证商品列表展示是否正确,包括商品名称、价格、评价等信息。c. 浏览促销活动:验证促销活动的展示是否正确,包括折扣、优惠券等信息。a. 点击分类链接:点击某个分类链接,验证进入对应...

    2024-02-29 17:12:55
  • Linux 图形栈一览:基于 DRM 和 Wayland

    Linux 图形栈一览:基于 DRM 和 Wayland

    Chen Jie创作于 2019/11/13by Chen Jie of TinyLab.org 2019/10/07本文图示了基于 DRM 还有 Wayland 的 Linux 图形栈。在这个图形栈...

    2024-02-29 17:12:26
  • Kali内Nmap端口扫描与高级扫描

    Kali内Nmap端口扫描与高级扫描

    目录 使用Nmap进行端口扫描 高级Nmap扫描:TCP空闲扫描 使用Nmap进行端口扫描 -sS代表使用nmap执行一次隐秘的TCP扫描 -Pn代表nmap不会使用ping命令预先判断主机是否存活 ...

    2024-02-29 17:12:19
  • C# DataGridView绑定数据源的几种常见方式

    根据DataSource绑定的对象的不同,可以有一下几种简单的绑定: // DataSet 、DataTable // 方式1 DataSet ds=new DataSet (); this.data...

    2024-02-29 17:12:13
  • AQS原理详解

    AQS原理详解

    文章目录定义原理加锁流程解锁流程流程图ReentrankLock原理加锁代码lockacquiretryAcquireaddWaiteracquireQueuedshouldParkAfterFail...

    2024-02-29 17:11:43
  • 深入学习mongodb概述

        MongoDB被称为最像关系型数据库的非关系型数据库,结构非常松散,支持复杂的数据类型,几乎可以实现关系型数据库单表查询的绝大部分功能,另外还支持索引,最新的版本还将增加事物;MongoDB的...

    2024-02-29 17:11:36
  • 剑指offer 07. 二叉树的下一个节点

    剑指offer 07. 二叉树的下一个节点

    📣专栏定位:为找工作的小伙伴整理常考算法题解,祝大家都能成功上岸!

    2024-02-29 17:11:30
  • Tensorflow学习笔记九——经典卷积神经网络

    简介LeNet-5,AlexNet,VGGNet,InceptinNet-v3,ResNet 9.1 LeNet-5卷积网络模型 1.模型结构 第一层:输入层,3232分辨率黑白图像。但是mnist数...

    2024-02-29 17:11:23