Gitee

开源一套简单通用的后台管理系统

孤街浪徒 提交于 2020-08-20 08:06:44
  前言   前段时间我们写一个简单的后台模板 SpringBoot系列——Security + Layui实现一套权限管理后台模板 ,今天我们把它完善成一个简单通用的后台管理系统,我把它叫做:Base Admin   这套Base Admin是一套简单通用的后台管理系统,主要功能有:权限管理、菜单管理、用户管理,系统设置、实时日志,实时监控,API加密,以及登录用户修改密码、配置个性菜单等   技术栈   前端:layui   java后端:SpringBoot + Thymeleaf + WebSocket + Spring Security + SpringData-Jpa + MySql   工程结构说明   java部分、html、js、css部分都是大目录下面按单表一个子目录存放   2020-06-10更新   之前调整过前端文件结构布局,现在重新更新说明一下   运行预览   效果先睹为快,具体介绍在下方,按功能点进行详情介绍   功能演示   登录   (为了方便演示,密码输入框的类型改成text)   配置文件分支选择,dev环境无需输入验证码   同时支持多种登录限制   允许/禁止账号多人在线   软删除      限制登录IP地址   账号过期   更多登录限制,还可以继续扩展   系统设置   一下简单的系统属性设置,想支持更多的配置可自行扩展

《Java8实战》笔记(07):并行数据处理与性能

爷,独闯天下 提交于 2020-08-20 06:56:45
并行数据处理与性能 在Java 7之前,并行处理数据集合非常麻烦。 第一,你得明确地把包含数据的数据结构分成若干子部分。 第二,你要给每个子部分分配一个独立的线程。 第三,你需要在恰当的时候对它们进行同步来避免不希望出现的竞争条件,等待所有线程完成,最后把这些部分结果合并起来。 Java 7引入了一个叫作分支/合并的框架,让这些操作更稳定、更不易出错。 并行流 ParallelStreams 可以通过对收集源调用Stream接口parallelStream方法来把集合转换为并行流。并行流就是一个把内容分成多个数据块,并用不同的线程分别处理每个数据块的流。 假设你需要写一个方法,接受数字n作为参数,并返回从1到给定参数的所有数字的和。 public static long sequentialSum(long n) { return Stream.iterate(1L, i -> i + 1) .limit(n) .reduce(0L, Long::sum); } 用更为传统的Java术语来说,这段代码与下面的迭代等价: public static long iterativeSum(long n) { long result = 0; for (long i = 1L; i <= n; i++) { result += i; } return result; }

用PaddleClas实现酒标识别,让你秒变“鉴酒达人”

自作多情 提交于 2020-08-20 05:11:26
“酒”一直在我们中华民族的传统文化中占据着不可或缺的位置,更有“无酒不成席、无酒不成礼”之说。而当今“全球酒坛”百花齐放,成千上万的酒品琳琅满目,我们如何了解这些酒的特点和它们身后的故事呢?“百瓶App”的产品研发团队就敏锐的发现了这一独特的需求,力争为“酒圈”的消费者提供更贴心、人性化的体验,并通过百度 飞桨 开源深度学习平台的助力,完成了“百瓶App”中的 “扫酒标识酒”的功能 ,让各类酒友都变成识酒达人。 下载安装命令 ## CPU版本安装命令 pip install -f https://paddlepaddle.org.cn/pip/oschina/cpu paddlepaddle ## GPU版本安装命令 pip install -f https://paddlepaddle.org.cn/pip/oschina/gpu paddlepaddle-gpu “扫酒标识酒”基于百度 飞桨 的AI技术方案 “扫酒标识酒”功能主要用到图像分类的技术,百度 飞桨 作为源于产业实践的开源深度学习平台,在图像分类方面同样有着极其丰富的AI解决方案资源。 其中 飞桨 图像分类套件 P addleCla s 提供了丰富的图像分类模型资源 ,覆盖ResNet_vd、MobileNetV3等23种系列的分类网络结构以及对应的117个分类预训练模型,用户可根据自己的需求

CKEditor 5 + SpringBoot实战(三):SpringData JPA数据持久化

℡╲_俬逩灬. 提交于 2020-08-20 01:28:03
在本系列的文章中,我将介绍如何在Spring Boot Application中使用CKEditor编辑器。介绍的内容包括基本环境的搭建,文件上传,SpringData JPA数据持久化,CKEditor5的安装,CKEditor图片上传,CKEditor插入视频,获取/设置CKEditor内容等。 项目源码 本系列文章的项目源码同步更新至 码云 和 Github ,你可以任选其一下载源码到本地。项目地址如下: 码云: https://gitee.com/ramostear/CKEditor5-SpringBoot Github: https://github.com/ramostear/CKEditor5-SpringBoot 你也可以通过Git命令行工具下载项目源码,命令如下(二者任选其一): git clone https://gitee.com/ramostear/CKEditor5-SpringBoot.git git clone https://github.com/ramostear/CKEditor5-SpringBoot.git 接上篇内容,本篇的主要内容是引入MySQL数据库驱动依赖和SpringData JPA依赖,然后创建内容实体,并完成数据持久层(DAO)和业务逻辑层(Service)相关代码的设计和实现。 引入依赖 前面的内容中我们分析过

Qt音视频开发11-ffmpeg常用命令

一曲冷凌霜 提交于 2020-08-19 23:26:46
一、前言 大部分的格式转换工具比如格式化工厂等,都用到了ffmpeg来处理,ffmpeg编译后生成的ffmpeg.exe、ffplay.exe、ffprobe.exe等可执行文件,其实就封装了众多牛逼的功能,ffprobe查看媒体文件头信息的工具,ffplay用于播放媒体文件的工具,尤其是ffmpeg.exe,强大的媒体文件转换工具,可以转换任何媒体文件,还可以用自己的 AudioFilter 以及 VideoFliter 进行处理和编辑,比如下面的一些功能。 列出支持的格式:ffmpeg -formats 剪切一段媒体文件:ffmpeg -i input.mp4 -ss 00:00:50.0 -codec copy -t 20 output.mp4 提取一个视频文件中的音频文件:ffmpeg -i input.mp4 -vn -acodec copy output.m4a 视频静音,即只保留视频:ffmpeg -i input.mp4 -an -vcodec copy output.mp4 从MP4文件中抽取视频流导出为裸的H264数据:ffmpeg -i output.mp4 -an -vcodec copy -bsf:v h264_mp4toannexb output.h264 使用AAC音频数据和H264视频生成MP4文件:ffmpeg -i test.aac -i

SpringBoot2 整合FreeMarker模板,完成页面静态化处理

淺唱寂寞╮ 提交于 2020-08-19 22:58:08
本文源码: GitHub·点这里 || GitEE·点这里 一、页面静态化 1、动静态页面 静态页面 即静态网页,指已经装载好内容HTML页面,无需经过请求服务器数据和编译过程,直接加载到客户浏览器上显示出来。通俗的说就是生成独立的HTML页面,且不与服务器进行数据交互。 优缺点描述: 静态网页的内容稳定,页面加载速度极快; 不与服务器交互,提升安全性; 静态网页的交互性差,数据实时性很低; 维度成本高,生成很多HTML页面; 动态页面 指跟静态网页相对的一种网页编程技术,页面的内容需要请求服务器获取,在不考虑缓存的情况下,服务接口的数据变化,页面加载的内容也会实时变化,显示的内容却是随着数据库操作的结果而动态改变的。 优缺点描述: 动态网页的实时获取数据,延迟性低; 依赖数据库交互,页面维护成本很低; 与数据库实时交互,安全控制的成本高; 页面加载速度十分依赖数据库和服务的性能; 动态页面和静态页面有很强的相对性,对比之下也比较好理解。 2、应用场景 动态页面静态化处理的应用场景非常多,例如: 大型网站的头部和底部,静态化之后统一加载; 媒体网站,内容经过渲染,直接转为HTML网页; 高并发下,CDN边缘节点代理的静态网页; 电商网站中,复杂的产品详情页处理; 静态化技术的根本:提示服务的响应速度,或者说使响应节点提前,如一般的流程,页面(客户端)请求服务,服务处理,响应数据

gitee添加秘钥

我只是一个虾纸丫 提交于 2020-08-19 20:34:11
1 生成秘钥 ssh-keygen -t rsa -C "你的邮箱@xxx.com" 2上传公钥 通过web页面,将公钥上传 3公钥测试 ssh -T git@gitee.com 来源: oschina 链接: https://my.oschina.net/u/2446173/blog/4281757

使用「Gitee」搭建个人图床

…衆ロ難τιáo~ 提交于 2020-08-19 19:50:52
使用「Gitee」搭建个人图床 一、前言 搭建个人的图床可以更加方便地管理个人图片,虽然「Github」也可以实现个人图床的搭建,但是,「Github」毕竟是外网,访问速度慢且不稳定。因此采用「Gitee」来搭建图床是个好选择。 二、创建仓库 第一步,在「Gitee」上创建一个仓库,用于存放图片: 三、建立联系 创建一个本地文件夹与刚才创建的远程仓库建立联系,可以采用以下两种方式: 「第一种」:将新创建的远程仓库克隆到本地文件夹中: git clone https://gitee.com/ahuntsun/BlogImageBed.git 「第二种」:手动关联本地文件夹与远程仓库: //添加远程仓库地址 git remote add originhttps://gitee.com/ahuntsun/BlogImageBed.git 建立联系之后,我们就可以自由地更新这个远程仓库了; 四、开启「Gitee Pages」服务 在仓库中打开服务选项,选择「Gitee Pages」: 在「Gitee Pages」服务页面可以选择部署服务的分支和目录等,然后点击启动选项,就能开启「Gitee Pages」服务了: 稍等片刻,图床的部署就完成了: 从上图可以看到,「Gitee Pages」生成的图床地址为: http://ahuntsun.gitee.io/blogimagebed

解决git init 方法下push失败报错的方法**

大憨熊 提交于 2020-08-19 17:34:09
解决git init 方法下push失败报错的方法 * 平时拉取远程仓库我们大多数情况下会使用git clone,这样远程仓库会自动在你的目录下生成文件夹,接下来的步骤也就简单的多了,只需要add ./;git comiit -m"##"/git push即可将本地仓库的数据上传至远程主机。 在我们使用git init方法的时候,是将本地的文件夹和gitee远程主机建立关联,代码是git remote add origin 仓库地址。判断是否成功关联可输入remote -v。 当我们使用这种办法准备将本地文件push到远程主机时经常会出现报错,一般分为2种情况。 1.用户名或者密码错误。(此错误提示明显) 2.由于之前使用过别的办法建立本地和线上连接,因此需要将控制面板内的凭据删除。如果依然不能解决可以试试git pull --rebase origin master (一般来说第一次是不需要拉取远程仓库的)。最后还有一种暴力的办法,前提是确保远程仓库是新建的没有重要文件,git push -f origin ”##“(强制推送,会覆盖仓库原有内容)。 来源: oschina 链接: https://my.oschina.net/u/4392911/blog/4513758

Qt开源作品36-程序守护进程

荒凉一梦 提交于 2020-08-19 17:06:41
一、前言 没有任何人敢保证自己写的程序没有任何BUG,尤其是在商业项目中,程序量越大,复杂度越高,出错的概率越大,尤其是现场环境千差万别,和当初本地电脑测试环境很可能不一样,有很多特殊情况没有考虑到,如果需要保证程序7*24小时运行,则需要想一些办法能够让程序死了能够活过来,在嵌入式linux上,大部分会采用看门狗的形式来处理,程序打开看门狗驱动后,定时喂狗,一旦超过规定的时间,则硬件软复位等。这种方式相对来说比较可靠,如果需要在普通PC机上运行怎办呢?本篇文章提供一个软件实现守护进程的办法,原理就是udp通信,单独写个守护进程程序,专门负责检测主程序是否存在,不存在则启动。主程序只需要启动live类监听端口,收到hello就回复ok就行。 为了使得兼容任意程序,特意提炼出来共性,增加了多种设置。 主要功能: 可设置检测的程序名称。 可设置udp通信端口。 可设置超时次数。 自动记录已重启次数。 自动记录最后一次重启时间。 是否需要重新刷新桌面。 可重置当前重启次数和最后重启时间。 自动隐藏的托盘运行或者后台运行。 提供界面设置程序名称已经开启和暂停服务。 二、代码思路 AppLive::AppLive(QObject *parent) : QObject(parent) { udpServer = new QUdpSocket(this); QString name = qApp