自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 收藏
  • 关注

原创 Tauri之嵌入固定版本Webview2

编译后生成的exe会将Webview2路径设置为webviewInstallMode指定的路径,比如上面的例子就是在exe同路径下;Tauri在Windows运行时依赖Webview2,不过现阶段Webview2的坑还是不少,而且会偷偷自动更新,这里介绍直接嵌入固定版本Webview2到Tauri应用的方法。解压cab到src-tauri下,比如:Microsoft.WebView2.FixedVersionRuntime.115.0.1901.203.x64。下载对应版本的cab文件。

2023-09-07 07:34:35 724

原创 Tauri之单例+多窗口

单例可以通过tauri_plugin_single_instance实现,多窗口可以简单通过路由来实现。这里前端部分使用react 18 + react-router-dom 6,注意要使用。动态创建窗口的时候,记得清空tauri.config.json里的windows。通过唯一label区分窗口,动态创建新窗口或恢复旧窗口。

2023-09-07 07:11:43 844

原创 Electron之单例+多窗口

单例可以通过app.requestSingleInstanceLock实现,多窗口可以简单通过路由来实现。

2023-09-07 07:09:03 1287

原创 React之IndexedDB之Dexie

React之IndexedDB之Dexie一、概述IndexedDB 是一个基于 JavaScript 的面向对象数据库,类似于基于 SQL 的 RDBMS,用于在客户端存储大量的结构化数据(也包括文件/二进制大型对象(blobs))。我们这里使用Dexie.js来操作IndexedDB。二、使用官方文档:https://dexie.org/docs/Tutorial/React示例创建数据库import Dexie, { Table } from 'dexie';exp

2022-02-20 08:06:55 1371

原创 React之PixiJS之渲染复杂SVG

React之PixiJS之渲染复杂SVG一、概述Pixi是一个超快的2D渲染引擎,这里主要使用PixiJS v6渲染复杂的SVG二、总结使用@pixi-essentials/svg给我们转换SVG提供了基础,不过还是不够完善,我们可以基于它按需拓展pixi-viewport给我们提供了动态可视区域,移动,缩放等功能可以高效实现性能动态刷新如果渲染复杂的SVG,要将手动管理ticker,否则性能问题将带来灾难。对于渲染复杂SVG的需求来说,大多数情况下,可视区域都

2022-02-20 08:04:51 1443

原创 VMWare之Windows硬盘扩容

VMWare之Windows硬盘扩容关闭虚拟机删除快照,不能有快照编辑虚拟机设置-硬盘-扩展打开虚拟机:计算机管理-扩展硬盘

2022-02-19 11:15:18 1995

原创 Python免安装环境(Windows)

Python免安装环境(Windows)Python环境完全可以做到免安装,统一版本到官网下载嵌入版python:这里下载python39安装pip:下载脚本:https://bootstrap.pypa.io/get-pip.py,放到python根目录,执行: py get-pip.py配置pip包: python39._pth: 去掉 “import site”前面的 # 号安装依赖使用Scripts下的pip.exe打包python目录,至此大多数Windows环境下可以免安装直接

2022-02-19 11:14:35 3172

原创 使用frp和阿里云服务器实现内网穿透(sqlserver)

使用frp和阿里云服务器实现内网穿透(sqlserver)一、概述为了使用内网设备,我们可以在阿里云服务器上部署frp服务,经过消息转发,暴露内网设备。这里将内网win10上的sqlserver通过阿里云服务器暴露。frp项目:https://github.com/fatedier/frp/releases二、服务器配置这里是阿里云服务器安装frp:这里的版本是v0.39.1安装包:直接下载:v0.39.1docker:docker-compose.yml文件如下vers

2022-02-19 11:13:31 2033

原创 使用Verdaccio(docker)搭建私有npm仓库

使用Verdaccio(docker)搭建私有npm仓库一、概述Verdaccio可以帮我们搭建npm私有仓库,配合docker更加方便二、安装docker-composeversion: '3.5'services: verdaccio: image: verdaccio/verdaccio container_name: "verdaccio" restart: always environment: - VERDACCIO_PORT=4

2022-02-19 11:11:41 1053

原创 Nodejs之NestJS之pkg打包

Nodejs之NestJS之pkg打包一、概述pkg打包有两个优势:打包node环境,不需要安装node,保证环境一致相当于“加密”代码二、使用安装:npm i pkg -g配置package.json "scripts": { "pkg:win": "pkg . -t node14-win-x64 -o app-win --debug", "pkg:mac": "pkg . -t node14-mac-x64 -o app-mac --debug",

2022-02-19 11:10:33 2960

原创 Nodejs之NestJS之TypeORM使用

Nodejs之NestJS之TypeORM使用node下的TypeORM比上不足,比下有余,这里分享一些使用经验一、入口TypeORM提供的入口很多,connection,entityManager,repo,使用的时候难免纠结用什么,这里建议统一使用entityManager:getManager()二、事务建议封装事务,动态传入entityManager,方便复用和测试:import { EntityManager, getManager } from 'typeorm';impo

2022-02-19 11:08:44 2430

原创 Python之PDF提取表格数据

提取PDF文件中的表格数据是一个很常见的需求,为此我们经常付费,其实实现起来比较容易这里使用camelot提取数据import camelottables = camelot.read_pdf(pdf_filepath, pages='1-end')for item in tables: df = item.df # item.to_csv('test.csv') # item.to_excel('test.xlsx')pages使用’1-end’就可以读取pdf文.

2021-05-28 06:11:04 334

原创 CentOS7之部署.Net Core

CentOS7之部署.Net Core.Net Core是跨平台的,这里记录centos7下安装.net core 3.1,详细教程官网已经给出安装sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpmsudo yum updatesudo yum install dotnet-sdk-3.1验证 dotnet --version部署服务服务文件

2021-01-18 07:12:13 187

原创 CentOS7之VMware扩容

CentOS7之VMware扩容centos下扩容还是有些步骤的,这里详细做个记录在VMware上扩容20G查看磁盘信息df -lhfdisk -l用fdisk工具给sda磁盘分区使用fdisk工具fdisk /dev/sda帮助m操作:增加一个新分区n默认Select (default p):Using default response pPartition number (3,4, default 3):First sector (419430

2021-01-17 19:31:15 127

原创 CentOS7之安装GNOME界面

CentOS7之安装GNOME界面一般centos服务器都是命令行管理,但考虑到团队实力,有的情况下还是需要GNOME界面的安装GNOME:yum -y groups install “GNOME Desktop”启用GNOME:systemctl set-default graphical.target启用命令行:systemctl set-default multi-user.target...

2021-01-17 19:30:12 447

原创 docker之镜像导入导出

docker之镜像导入导出一般情况下,景象都是云端的方案,但有的时候也需要离线的方案,这里要注意不要使用export、import方式,而要使用save、load方式导出镜像:docker save imagename > imagename.tar (不要用export)导入镜像:docker load < imagename.tar(不要用import)...

2021-01-17 18:36:54 93

原创 docker之环境清理

docker之环境清理docker环境带来极大便利的同时,我们也经常遇到垃圾文件的困扰,这里梳理一下常用的清理命令。基础清理:docker system prune -f容器清理:docker container prune -f卷清理:docker volume prune -f停止所有运行的容器: docker stop $(docker ps -aq)删除所有关闭的容器: docker rm $(docker ps -aq)删除所有dangling镜像(即无tag的镜像): doc

2021-01-17 18:36:21 823

原创 docker之CentOS安装

docker之CentOS安装国内网络环境问题,导致安装docker不稳定,这里使用DaoClouddocker:curl -sSL https://get.daocloud.io/docker | shdocker-compose:curl -L https://get.daocloud.io/docker/compose/releases/download/1.27.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/do

2021-01-17 18:35:10 111

原创 EF Core之批量操作(EFCore.BulkExtensions)

EF Core之批量操作(EFCore.BulkExtensions)EFCore的批量操作性能也在不断完善当中,但还是不够优秀,数据量大的情况下还是要单独处理,这里我们使用EFCore.BulkExtensions(SqlServer)查询EFCore.BulkExtensions的批量查询还是不适合开箱即用,需要做一些基础封装,我们可以在Context里增加扩展方法public async Task<List<T>> WhereInAsync<T>

2021-01-17 09:34:39 2441

原创 .Net Core之OData

.Net Core之ODataOData可以说是轻量级的GraphQL,但又和GraphQL不同,配合Linq和EFCore,可以极大简化接口,提高开发效率。但全套OData过重,坑也不少,所以我在项目里只使用了其Get部分的功能,同时重写了部分功能,配合EFCore实现高效开发引入services.AddOData();services.AddODataQueryFilter();启用public static class ODataExtension{ public

2021-01-17 09:07:50 698

原创 .Net Core之SignalR

.Net Core之SignalRSignalR作为实时通讯框架,支持轮询和WebSocket,会自动选择服务器和客户端的最佳传输方式,很适合需要实时通讯的需求引入services.AddSignalR();app.UseEndpoints(endpoints =>{ endpoints.MapControllers(); endpoints.MapHub<SignalRHub>("/signalRHub");});定义SignalR的Hu

2021-01-17 08:28:35 1017

原创 .Net Core之后台任务

.Net Core之后台任务.Net Core自带的后台任务可以满足基础需求,而更高级的用法则需要自己实现或使用第三方库,比如Hangfire自带后台任务(IHostedService)一次性,周期性,任务队列都可以通过IHostedService快速实现,微软官方文档已经做了很详细的说明,我这里就放出一个周期任务的例子 /// <summary> /// 定时任务 /// </summary> public class TimedHos

2021-01-17 08:09:54 1097

原创 .Net Core之发送邮件

.Net Core之发送邮件发送邮件是一个通用功能,这里我们使用MailKit配合Polly做重试封装EmailSenderIEmailSenderpublic interface IEmailSender{ Task SendEmailAsync(string to, string subject, string message, TextFormat textFormat = TextFormat.Plain); Task SendEmailAsync(List&lt

2021-01-17 08:08:02 1725

原创 .Net Core之动态多国语言

.Net Core之动态多国语言不只是.Net Core,几乎是所有平台的多国语言都是写死的,但有的时候需要动的多国语言该怎么办呢?这里提供一种方案:.Net Core + EF Core (也就是数据库资源).Net Core默认的StringLocalizer只支持Resource文件,语言种类是固定的,内容也无法在运行时更改,我们现在的方案是支持数据库,也可以在运行时实时修改内容...

2019-03-16 14:37:20 1300

原创 .Net Core之Excel(docker)

.Net Core之Excel(docker).Net Core 3.0还没有正式发布,目前对UI这一块的支持还不是很完善,但很多也能够支持了,比如说Excel和PDF,我们这里主要利用EPPlus调用Excel文件(docker)docker + .Net Core很好用,但是官方docker镜像确实缺少了GUI+的支持,所以在.Net Core下使用EPPlus操作Excel的时候...

2019-03-16 14:19:33 593 1

原创 .Net Core之RabbitMQ

.Net Core之RabbitMQ.Net Core下使用RabbitMQ很方便,不过这里还是采用了EasyNetQ这一二次封装的库EasyNetQ对Rabbit原生接口进行了二次封装,提供了IBus作为入口,入门使用的话更加方便,要想使用,只需要在Startup的时候助于一个Singleton的IBus即可:service.AddSingleton(RabbitHutch.Cre...

2019-03-16 14:00:31 791

原创 .Net Core之Swagger

.Net Core之SwaggerWebApi + Swagger是绝配,这里主要使用Swashbuckle和NSwag.Net Core WebApi集成Swagger主要使用Swashbuckle,但是Swashbuckle得页面真的比较卡慢,这时候使用NSwag的页面明显流畅得多:public static class SwaggerExtension{ public...

2019-03-16 13:35:06 1243

原创 .Net Core之MongoDB存储文件

.Net Core之MongoDB存储文件MongoDB提供了GridFS来存储文件,我们这里就讨论采用GridFS存储文件的方案这里主要使用MongoDB.Driver相关库MongoDB的一些基本使用:public class MongoFileRepo { private IMongoClient _client; private IM...

2019-03-16 09:45:25 1210

原创 .Net Core之JWT认证方案

.Net Core之JWT认证方案.Net Core提供了JWT的认证方案,开箱即用,我们再配合Redis启用黑名单机制,基本可以满足需求基本功能开启JWT认证:public void ConfigureServices(IServiceCollection services){ services.AddAuthentication(JwtBearerDefaults.A...

2019-03-16 09:21:36 2813

原创 EF Core之值转换

EF Core之值转换有的时候存在数据库里的数据和我们实际应用的是不一样的,以前只能在model里添加一个特殊的字段来手动转化,其实EF Core提供了一种更优雅解决方案—值转换值转换的应用非常简单,我们这里以TimeSpan数据为例:如果我们直接存储TimeSpan格式的数据,在SqlServer中是有问题的,这样的情况下,存储的数据只能是24小时以内的,这时候我们就需要存储为...

2019-03-16 07:29:44 1658

原创 EF Core之全局删除方案

EF Core之全局删除方案本文主要对EF Core的级联删除和软删除的全局配置作说明EF Core的外键默认是级联删除的,如果不想这样就只能手动配置,这里提供一种全局配置的方式:DBContext的OnModelCreating就是我们要处理的地方:protected override void OnModelCreating(ModelBuilder modelBuilde...

2019-03-16 07:16:32 3372

原创 EF Core之SqlException处理

EF Core之SqlException处理外键,唯一约束等对后端检查起到了很多的帮助,但有的时候需要后端直接将报错信息反馈给前端。这个时候直接返回SqlException就不合适了,需要对其进行翻译,返回可读的信息EF Core的SqlException的全局处理还是要在DBContext里进行SaveChanges就是我们要处理的地方,EF Core对应的Exception是...

2019-03-15 18:33:40 1245

原创 EF Core之自动历史记录

EF Core之自动历史记录有的场景下需要记录特定表的增删改操作,以便追溯。传统的做法是在增删改的方法里同步做记录,很繁琐。在这里我们可以配合EF Core的DBContext做一个全局管控全局管控自然就要有固定的格式我们可以建一个空接ITrackable口来标明需要追踪的表:public interface ITrackable{}对于需要追踪的表,继承ITrac...

2019-03-15 17:53:19 995

原创 EF Core之DBContext生命周期

EF Core之DBContext生命周期DBContext是EF Core的核心,.Net Core WebApi开发的时候,绝大多数的场景下,我们只需要一个Scoped的DBContext即可,但有的时候Scoped是没法满足需求的绝大多数场景下,只需要在Startup注入一个Scoped的Context即可:services.AddDbContext&amp;amp;lt;DBContext&amp;amp;...

2019-03-15 17:13:05 4972

原创 TabLayout + ViewPager + Fragment + SwipeRefreshLayout + RecyclerView

TabLayout + ViewPager + Fragment + SwipeRefreshLayout + RecyclerView Android开发中,顶栏和底栏的的使用很普遍,处理方法也不少; 本文对主流的 TabLayout + ViewPager + Fragment + SwipeRefreshLayout + RecyclerView方式进行简要说明;

2017-01-09 11:15:26 3105 1

原创 Android OpenGL ES 2.0学习研究 (一)

Android OpenGL ES 2.0学习研究 (一) 基于对 Google 的 Gallery 代码的研究和修改,对 OpenGL ES 2.0 在 Android 中的使用进行总结; 这一篇主要集中于四点进行简要介绍:GLRootView(base) + GLView(UI) + GLES20Canvas(canvas) + Texture;

2017-01-09 10:52:07 1111

原创 关于RxAndroid

关于RxAndroid背景交代 RxAndroid基于RxJava,又多点特性,比如切换主线程; 响应式编程很火也很好用,但需要一点学习成本目前Rx系列的教程泛滥,都能够学习Rx的基础和理论知识:不过在看这些教程的时候,总是觉得很多例子太脱离实际,或许是大婶们不屑于用在小地方?对于我来说,需要点直观的实例,才好明白Rx的强大之处。你说他强大,巴拉巴拉一通理论知识,不拿点实例当干

2016-10-01 19:31:48 371

原创 关于MINA和Android指令收发

关于MINA和Android指令收发背景交代: 全拼:Multipurpose Infrastructure for Network Applications 谈谈MINA在各个网络库的基础使用经验(客户端),以及Android中的指令收发。 概述:一个长连接就像一场男女关系。关系 关系是一切的根基长期稳定的关系建立在每一次的心跳之上: SocketConnector

2016-10-01 19:16:00 428

原创 Android 开发:加载未安装apk图标-拔出U盘导致进程被杀的解决方案

Android 开发:加载未安装apk图标-拔出U盘导致进程被杀的解决方案 在开发一款文件管理器,出现一个难题:因为要显示apk文件的图标,导致在拔出U盘的时候进程被杀,继而crash。 本文就是针对此问题,提出我的解决办法。

2016-09-02 11:47:28 4014 3

原创 okhttp3 StrictMode Error

okhttp3 StrictMode Error 使用okhttp3.3过程中遇到以下bug,google了一下也没找到解决办法,现放出自己的解决办法:E/StrictMode(16877): A resource was acquired at attached stack trace but never released. See java.io.Closeable for informa

2016-08-31 14:25:35 505

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除