【有手就行】:从无到有搭建个人Maven私有仓库
前言为什么要搭建私有仓库?一是学习新技术,二是方便自己制作相关组件或镜像上传私库并下载使用(后续用docker跑项目时需要用到私库上传镜像),大家时间都很宝贵,直接入正题吧
开始吧下载Nexus windows版本安装包
Nexus Download
进去后会让填写基本信息,填写完成后就可以选择下载由于国内网络问题,可能会下载不了,所以附上已下载好的百度网盘链接
链接:https://pan.baidu.com/s/1MlALcWn5IoMJh0Ff20MdXg?pwd=pdj8提取码:pdj8
配置端口号下载下来后解压,打开 nexus-3.54.1-01-win64\nexus-3.54.1-01\etc\nexus-default.properties,修改端口号(不常用的 比如8888)
启动Nexus保存后,进入nexus-3.54.1-01-win64\nexus-3.54.1-01\bin 目录,打开CMD命令框,执行nexus.exe
1nexus.exe/run
后面等待系统启动Nexus浏览器打开 http://localhost:8888(刚配置的端口号)
...
【后续 断点续传】前端大文件分片下载解决方案,没用你来砍我
前言之前已经出过 大文件分片下载 的教程,期间也收到很多小伙伴的疑问说是功能上有点问题,也抽时间将一些大的问题修改了,验证了很多次,应该不会有什么问题了;在下载方案中涉及到断点续传部分的没有细讲,因为当时时间有限,所以只是稍微带过了,最近突然又闲下来了, 所以还是抽点时间将之前的方案细节更新完整
直接开始整这里只涉及到续传功能的修改,要了解分片下载 请移步 前端大文件分片下载解决方案,没用你来砍我
修改工具类download.js1234567891011121314151617181920212223242526272829303132333435363738394041424344454647// 添加获取下载列表的方法// 定义文件存储数据库名的前缀const progress_file_prefix = "progress_file_"/** * @description 获取下载列表 * @param {*} page 页面 * @param {*} user 用户 * @param {*} c ...
【有手就行】:从无到有搭建后端SpringBoot项目
前言想静下心来写点东西,但是确实想不到该写点啥,可能是少了点感觉吧 😢。前面刚整理了下前端VUE,就想了下把后端也一起整理下吧,免得换电脑了安装环境又要弄半天,那就开搞吧
首先 准备环境1.安装IDEA去官网下载IDEA社区版(IntelliJ IDEA Community ),如果是大佬可以选择专业版(IntelliJ IDEA Ultimate),毕竟花钱的功能确实多些;下载下来按步骤安装即可
IDEA 业界被公认为最好的java开发工具之一
2.安装JDK我这选的是jdk1.8,看个人需要,自行选择相应版本;下载后按照步骤一步一步安装即可,安装完成会自动配置环境变量
JDK JAVA开发的核心,包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具
安装完成后,打开黑屏框验证是否安装完成
1java -version
能显示出版本即为安装成功3.安装Apache MavenMaven是一个开源的项目管理和构建工具,主要用于自动化构建、测试、部署Java项目
Apache Maven Project
下载 bin.zip结尾的包,下载下来后,找个地方解压 ...
【有手就行】:从无到有搭建前端VUE项目
前言由于好久没正儿八经写过前端代码了,导致现在想自己创建个VUE项目搞点东西却连步骤都忘了。反正闲着也是闲着,就简单归纳下,就当整理下笔记吧。
直接开始吧本次教程主要以VUE 2.x版本为介绍
第一步 环境准备1.安装Node从 Node官网下载node.js,至于选哪个版本,看个人需要吧
Node.JS 在任何地方运行 JavaScript
2.配置Node如果是安装包,系统会自动配置PATH,无需再另外配置;如果是免安装版,需要自己将Node路径配置到环境变量PATH里
1234# 配置淘宝镜像 加快下载速度npm config set registry https://registry.npmmirror.com# 安装cnpm,根据个人需要,可以不安装npm install -g cnpm
3.安装VUE脚手架(全局安装)
1234# 2.x版本npm install -g vue-cli # 3.x版本npm install -g @vue/cli
第二步 创建VUE项目1.首先进入一个提前准备好的项目路径,在该目录下执行创建命令
12345# 初始化一个项目 hell ...
Python知识分享:常用语法糖,用了都说好
前言Python 中的语法糖是指一些特殊的语法结构,它们并没有引入新的功能,但能够使代码更加简洁易读。下面是一些常用的 Python 语法糖示例,花一点时间学完,你就能撸一手优雅的代码。
正文下划线分割数字,使用下划线来分隔数字可以使得数字更加清晰易读1234a = 1000000000 # 打个10亿要去数几个零,麻烦b = 10_0000_0000 # 清晰c = 10_5555_5555print(a, b, c) # 1000000000 1000000000 1055555555
交换值,使用两个变量来交换值,可以使用位运算符 ^ 来避免创建临时变量12b, c = c, bprint(b, c)
范围比较:在 if 语句中使用范围比较可以直接进行条件判断,而不需要进行拆分12if 10 <= a <= 90: pass
字符串乘法:使用 * 符号可以将字符串重复指定次数1print('-' * 10) # ----------
数组合并:使用 + 符号可以将两个列表合并成一个新的列表123a = [1, 2, 3]b = ...
Python知识分享:openpyxl导入Excel工具类
不知道说啥了,直接上干货
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182from openpyxl import load_workbookclass ExcelUtils: """ 导入Excel header_dic: 表头字典(表头字段大于等于Excel中的表头) { 'name': '姓名', 'sex': '性别', 'age': 'age', 'email': '邮箱' } """ ...
Python知识分享:pymysql批量更新踩坑
前言最近捣鼓项目时,pymysql用executemany方法批量更新大量数据过程中,对处理时长有点不满意,于是看了下源代码,发现里面实现批量update居然是循环去execute的,吃鲸。数据少其实没多大影响,如果大量数据批量执行,那数据库压力可想而知,难怪速度提不上来;于是乎,请教了下万能的百度,得到一个还算可以的解决方案–【创建临时表实现批量更新】,以下就原方法和新实现的方法写个示例做个对比。
先来看下pymysql的源码(cursors.py)
1234567891011121314151617181920212223242526272829#: Regular expression for :meth:`Cursor.executemany`.#: executemany only supports simple bulk insert.#: You can use it to load large dataset.RE_INSERT_VALUES = re.compile( r"\s*((?:INSERT|REPLACE)\b.+\bVALUES?\s*)& ...
Luckysheet 实现excel多人在线协同编辑
前言闲的无事,捣鼓了一下Luckysheet,虽然luckysheet已经出3.0并改名为Univer了,但不影响我继续使用。今天要弄的是多人在线协同编辑Excel,虽然网上也有一些凌乱的教程,但是好像没涉及到Python的,而最近在转行做Python项目,所以借这个机会好好捣鼓一下。不知道luckysheet为何物的朋友可先百度查一下,这里就不多说了,直接进入正题。
正文准备工作前端Vue2.0,后端Python3.8 + FastApi + WebSocket
引入luckysheet依赖CSDN
123456<link rel='stylesheet' href='https://cdn.jsdelivr.net/npm/luckysheet/dist/plugins/css/pluginsCss.css' /><link rel='stylesheet' href='https://cdn.jsdelivr.net/npm/luckysheet/dist/plugins/plugins.cs ...
FastApi中使用websocket 简单实现多人聊天室
前言FastApi就不用说了,懂得都懂,不懂的请先懂了再来;
实现步骤WebSocket使得客户端和服务器之间的数据交换变得更加简单,简单点讲就是后端可以实时推送消息给正在使用的用户,多的不说,直接进入正题。
安装websocket1pip install websockets
创建工具类websocketutils.py
12345678910111213141516171819202122232425262728from fastapi import WebSocketfrom typing import List"""创建工具管理类 处理服务端和客户端的交互"""class WebsocketManager: def __init__(self): # 初始化参数 记录活跃的客户端 self.active_clients: List[WebSocket] = [] async def connect(self, websocket: WebSocket): # 创建 ...
前端大文件分片下载解决方案,没用你来砍我
超大文件下载,支持断点续传
前言好记性不如烂笔头,站在岸上学不会游泳。这次分享一是为了记录下忙碌几天的成果,方便以后查阅;二是避免别人走弯路,给别人方便就是给自己方便。
续传请移步 【后续 断点续传】前端大文件分片下载解决方案,没用你来砍我
背景客户下载超大文件(1G以上)时,下载异常断开,分析了下有以下原因:
nginx配置允许下载大小超限
网络带宽限制,导致龟速下载;
下载长时间连接可能会导致超时
针对上述问题,找到一个合理的解决方案 分片下载,既可不超限亦不需要保持长连接,如果出现网络波动断开连接,亦可断点续传。多的不说,直接上干货。
代码实现后端创建下载工具类DownloadUtil.java
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667import javax.servlet.http.HttpServletRequest;import javax.servlet ...