后端技术 后端技术主要还是 .NET 为主, 估计我也很难全面转向其它的技术方向, 毕竟接触 .NET 20 年了, 太熟悉了, 很难舍弃。 我维护的 .NET 项目均升级到了最新的 .NET 7 , 本来以为是常规升级, 但是由于 .NET 7 默认启用了 nullable 检查, 为了适应这个新特性, 许多代码都需要进行相应的修改, 程序的健壮性会增加不少, 随后会专门针对这个特性再写一篇。 前端技术 前端框架 前端一直用的是 Angular , 可以说是很棒的框架, 但是由于目前国内的现状, Angular 可以说是后继无人, 因此不得不寻找替代的前端技术框架, 基本上就... 阅读全文

记录2022年11月26日感染新冠奥密克戎病毒的流水帐以及广州琶洲方仓医院的一些见闻, 供大家参考。 如果你能看 Twitter 的话, 可以直接看这个主题贴。 2022年11月26日15点25分,收到12320的电话,初筛阳性,感觉轻微发烧,没有测体温, 这是要准备去方仓医院隔离了。 下午6点,抗原复测先阳性,体温39°,自我感觉和感冒症状一样,头疼,浑身肌肉酸痛。 只能按照防疫要求收拾东西准备去方仓医院隔离。 27日凌晨,到达传说中的琶洲方仓医院, 第一印象是这样的。 有兴趣可以分别看一下这两个视频,就不直接贴出来了: 视频1 视频2 。 只能一句话来形容... 阅读全文

最近要在 Ubuntu 系统上挂载共享存储并进行一些备份和服务迁移, 没想到居然也还有一些坑, 于是记录如下。 安装 cifs-utils 工具 首先, cifs-utils 一定要安装, 系统自带的 mount 命令虽然也能用, 但是选项不多, 或者说不够多。 在 Ubuntu 系统上, 安装命令为: sudo apt install cifs-utils 创建凭证文件 先创建一个凭证文件, 保存访问共享存储使用的用户名和密码, 这样会安全一些, 如果要多次挂载共享存储, 也可以共用这个凭证文件。 先创建 /etc/credentials 目录, sudo mkdir ... 阅读全文

记录从 MacBook Pro 2015 迁移到 MacBook Pro 2021 M1 时进行的一系列的折腾。 安装常用软件的 Arm 版本 虽然借助苹果的 Rosetta 转译程序, 可以直接运行原来的 x64 应用, 但是效率不高, 因此安装对应的 Arm 版本的软件才是最佳的选择。 从 AppStore 上下载的应用, 基本上已经都是通用 (Universal) 应用了, 只需要在新电脑上重新下载即可。 而不是在 AppStore 上下载的软件, 则只能自己去官方网站上寻找对应的 Arm 版本。 Rosetta 在最近几年内还是需要的, 毕竟有很多旧的软件还不支持 Arm... 阅读全文

最近有需要在 AspNet Core 应用中读取当前请求的请求体 (Request.Body) , 本来以为是很简单的事情, 没想到居然有坑, 因此记录如下。 动作方法 (Action Method) 没有参数的情况下, 可以用正常读取请求体的, 代码如下: [HttpPost("")] public async Task<ActionResult> Post() { var result = await Request.BodyReader.ReadAsync(); var message = string.Empty; if (result.I... 阅读全文

GeoServer 使用 Jetty 作为服务容器, 但是默认的下载的 GeoServer 并没有包含 JNDI 相关的 Jetty 模块, 而在 GeoServer 的配置界面是支持使用 JNDI 连接数据库的,这就前后矛盾了。 不过最坑的是 GeoServer 关于 JNDI 的文档 只有那么一小段, 居然还是基于 Tomcat 服务容器的, 真是太过分了。 添加 JNDI 支持 下载与 GeoServer 中的 Jetty 版本一致的完整包, 以最近发布的 GeoServer 2.20.0 为例, 内置的 Jetty 为 9.4.36.v20210114 。 添加 JNDI 支... 阅读全文

ArcGIS Enterprise 发现安全漏洞 ArcGIS Enterprise 使用 Apache Tomcat 作为 HTTP 服务器, 在最近的服务器安全漏洞扫描中被发现存在大量的安全漏洞, 如下图所示: 在 ArcGIS 知乎 上也有一些关于安全漏动的讨论, Apache-tomcat远程代码执行漏洞(CVE-2016-8735)漏洞是否会对ArcGIS for Server产生影响? , 结局似乎不了了之。 查询 Apache Tomcat 的 安全报告 得知, 针对这些安全问题, Apache Tomcat 已经发布一系列的安全更新来解决这些安全问题。 但是 A... 阅读全文

Rollup 简介 Rollup 是一个 JavaScript 模块打包器, 可以将小块代码编译成大块复杂的代码, 例如类库或应用程序。 Rollup 使用 JavaScript 标准的 ES6 模块, 而不是以前的 CommonJS 或者 AMD 模块。 和 Webpack 相比, Rollup 一个显著的优势是可以输出 ES6 模块,非常的简洁, 现代化的浏览器都可以直接加载, 跨项目重用也非常的方便。 而 Webpack 的输出则必须的依赖晦涩的 Webpack 运行时, 同时也很难跨项目重用。 Rollup 也是非常的流行, npm 上 大部分 JavaScript 类库... 阅读全文

修改默认端口 (可选) 启动注册表编辑器 (在“搜索”框中键入 regedit); 导航到以下注册表子项:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp ; 查找端口号 (PortNumber) ; 单击“编辑”>“修改” ,然后单击“十进制” ; 键入新端口号,然后单击 “确定”; 关闭注册表编辑器, 然后重新启动计算机; 下次使用远程桌面连接连接到此计算机时,必须键入新端口。 如果正在使用防火墙,请确保将防火墙配置... 阅读全文

ES 模块简介 ES Module 是 JavaScript 模块化的官方标准, 目前主流的浏览器已经实现,不依赖任何第三方加载器 (Loader) 即可使用。 点击此链接查看最新的浏览器支持情况 在浏览器中, 可以这样使用原生 ES 模块化的 JavaScript 脚本: // my_func.js export function my_func() { /* function content goes here */ } <script type="module"> import { my_func } from './my_func.js';... 阅读全文

什么是 ANTLR ? ANTLR 是功能强大的解析器生成器,用于读取,处理,执行或翻译结构化文本或二进制文件。它被广泛用于构建语言,工具和框架。ANTLR从语法中生成一个解析器,该解析器可以构建和遍历解析树。 ANTLR 语法库 ANTLR 为常见的语言构建了语法文件, 可以直接下载使用 https://github.com/antlr/grammars-v4 。 如果需要在程序中处理常用的语言, 可以先来这里找一下。 如何在 .NET 中使用 ANTLR ? ANTLR 被广泛应用与大数据分析、 人工智能等领域的语法分析, 网上的相关资料确实非常多, 但是 .NET 相关的... 阅读全文

矢量切片简介 矢量切片是 MapBox 定义的一种开放的 矢量地图标准 , 已经成为开放地理联盟 (OGC) 的标准之一。 个人认为矢量切片的主要优点有: 服务端只关注数据, 无需进行繁琐的配图; 网络传输快, 因为只有括矢量数据; 客户端渲染, 服务端的一套矢量数据, 在客户端可以有多种的表现形式; 充分利用客户端硬件 适配客户端屏幕, 根据屏幕解析度进行高精度矢量渲染; 利用 OpenGL/WebGL 实现海量空间数据渲染; 目前制作矢量切片的方式主要有: 使用 ArcGIS Pro 生成矢量切片包... 阅读全文

本博客基于 Tabler CSS 框架, 采用 Jekyll 模板引擎, 使用 Markdown 语法编写。

博客源代码及文章内容采用 AS-IS 协议发布,转载时请 AS-IS 。