原创 SpringBoot開發符合S3協議的文件存儲服務

背景 公司最近的業務大量涉及安可項目,要求避免使用第三方組件,原有開發框架支持本地文件存儲/Minio/各類雲存儲,現在要求文件獨立存儲且文件服務需要自研,經調研評估後決定基於SpringBoot開發文件存儲服務,使用s3協議標準,這樣可以

原创 fastjson全局日期序列化設置導致JSONField無效

問題描述 fastjson通過代碼指定全局序列化返回時間格式,導致使用JSONField註解標註屬性的特殊日期返回格式失效 使用版本 應用名稱 版本 springboot 2.0.0.RELEASE fastjson 1.

原创 c#使用Aspose實現Word域套打

前言 在項目開發過程中我們經常會使用word書籤替換功能導出一些模板類的文檔,可能很多人都不知道word還有一個域替換的功能。可以實現和書籤同樣的效果,對比word書籤,word域還可以用於一些對於格式要求嚴格的文檔導出(將域建立在模板圖片

原创 springboot多數據源配置及切換

注:本文的多數據源配置及切換的實現方法是,在框架中封裝,具體項目中配置及使用,也適用於多模塊項目 配置文件數據源讀取 通過springboot的Envioment和Binder對象進行讀取,無需手動聲明DataSource的Bean yml

原创 springboot使用mybatis-plus表單更新null值問題通用解決方案

問題背景 使用mybatis-plus進行數據庫交互,默認開啓null不更新設置,在新增數據後,編輯頁面將字段值清除後(date類型,int類型,爲避免默認值傳入,model全部使用包裝類型初始化爲null)無法將null值更新至數據庫 單

原创 ADO.NET事務封裝

在數據庫工具類編寫的過程中,對事務的處理操作想避免各個原子操作的事務對象賦值重複操作,想對外暴露的方法爲如下形式 public bool ExecuteTransition(Action TransitionAction, out

原创 後臺管理tab欄滑動解決方案

後臺管理系統中比較常見的佈局是左邊菜單欄,右邊tab切換欄,但是一般的tab組件不包含tab頁過多的切換問題的,所以需要個性化實現,本文的實現方案是滑動鼠標滾輪綁定tab達到切換的效果,先上一個動態圖看下效果  tab滑動欄佈局代碼如下

原创 ASP.NET MVC快速開發框架FastExecutor開發全過程感受及總結

困境 追溯到2018年5月份,是個炎熱的夏天,畢業後1年7個月我提出了離職,原因是受不了原來公司過度的封裝框架感覺一年多毫無進步與實施天天轟炸般的電話,偶然間出去面試了一次發現自己知識真的是比較侷限,決定換個環境提升自己,5月份出去面試屢屢

原创 c#使用CefSharp開發winform——環境搭建

因爲nuget在線下載有時候很慢,所以下載nuget包,進行本地安裝 登陸nuget官網https://www.nuget.org/下載相關資源         選擇對應版本進行下載,同時需要下載相關依賴的包       ​ 最終下載的

原创 c#通過Redis實現輕量級消息組件

最近在開發一個輕量級ASP.NET MVC開發框架,需要加入日誌記錄,郵件發送,短信發送等功能,爲了保持模塊的獨立性,所以需要通過消息通信的方式進行處理,爲了保持框架在部署,使用,二次開發過程中的簡易便捷性,所以沒有選擇傳統的MQ,而是基於

原创 ASP.NET MVC實現依賴注入的完整過程

這篇文章主要給大家介紹了關於ASP.NET MVC實現依賴注入的完整過程,文中通過示例代碼介紹的非常詳細,對大家學習或者使用ASP.NET MVC具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧 前言 在j

原创 bilibili彈幕爬取與比對分析

最近受人之託研究了下b站的數據爬取做個小工具,最後朋友說不需要了,本着開源共享的原則,將研究成果與大家分享一波,話不多說直接上乾貨 需求分析 給定up主uid和用戶uid,爬取用戶在該up主所有視頻中發的所有彈幕 需求拆解 獲取up主所有視

原创 ASP.NET MVC模塊化開發——動態掛載外部項目

最近在開發一個MVC框架,開發過程中考慮到以後開發依託於框架的項目,爲了框架的維護更新升級,代碼肯定要和具體的業務工程分割開來,所以需要解決業務工程掛載在框架工程的問題,MVC與傳統的ASP.NET不同,WebForm項目只需要掛在虛擬目

原创 ASP.NET MVC實現依賴注入

在java的spring中有自動注入功能,使得代碼變得更加簡潔靈活,所以想把這個功能移植到c#中,接下來逐步分析實現過程 1.使用自動注入場景分析 在asp.net mvc中,無論是什麼代碼邏輯分層,最終的表現層爲Controller層,

原创 c#通過Emit方式實現動態代理

之前自己在寫一個IOC小輪子的時候,臨時想加一個動態代理攔截功能,考慮到實用性方面,使用了Emit動態生成的方式代替RealProxy加反射的實現,網上查找過不少版本,但是都存在一些缺陷,所以決定自己實現一個。 首先了解一下動態代理的原理