原创 java實現(RSA非對稱加密) SHA1WithRSA加簽驗籤 及openssl生成公私鑰

RSA加簽驗籤流程: 本地發送請求時(本地已對請求根據私鑰進行加簽)      接收方平臺根據公鑰進行驗籤          判斷是否合法 接收來自平臺的響應時(平臺已根據私鑰進行加簽)      需要根據本地公鑰對響應進行

原创 oracle使用decode實現豎錶轉橫表 (列轉行)

工作中時長會用到豎錶轉橫表(列轉行)例如某商場每天都有營業額,數據庫中營業額存儲的方式是每天很多比每筆對應不同的消費記錄 ,可能有一天的營業額很多 對應的營業額明細就會很多,如果有個需求是要統計每天營業額多少,按天顯示結果該怎麼寫? 下

原创 git常用命令總結

git從版本庫導出項目 git clone [email protected]:XMCCB/koolyun/paytool.git 直接檢出全部代碼   git如果代碼出現衝突 手動merge 1、要保留服務器上的修改 git stas

原创 信息系統項目管理師思維導圖

5大過程租 啓動過程租、計劃過程組、執行過程租、監控和控制過程租、收尾過程租 各用一句話概括項目管理知識體系十大知識領域: 1、整合管理:其作用猶如項鍊中的那根線; 2、範圍管理:做且只做該做的事; 3、時間管理:讓一切按既定的進度進行;

原创 SimpleDateFormat中format方法、parse方法的線程安全問題線程安全問題

實際項目中我們經常會用到SimpleDateFormat用來格式化日期,但是我們沒有注意到他的線程安全問題,實際上這是一個線程不安全的類。 下面我將用例子證明: 網上找了好多都是證明parse方法線程不安全的,我這邊證明下format方法

原创 用redis實現分佈式鎖,解決高併發時的線程安全問題

實際工作中,經常會遇到多線程併發時的類似搶購的功能,本篇描述一個簡單的redis分佈式鎖實現的多線程搶票功能。 直接上代碼。首先按照慣例,給出一個錯誤的示範: 我們可以看看,當20個線程一起來搶10張票的時候,會發生什麼事。 packa

原创 CAS實現基於數據庫校驗的sso單點登陸

1、什麼是單點登錄 單點登錄(Single Sign On),簡稱爲 SSO,是目前比較流行的企業業務整合的解決方案之一。SSO的定義是在多個應用系統中,用戶只需要登錄一次就可以訪問所有相互信任的應用系統。 我們目前的系統存在諸多子系統,

原创 Hex2String操作超長字符串引出的String,StringBuffer,StringBuilder佔用內存問題

系統對外提供圖片上傳接口,但是要求上送的圖片需要是Base64的字符串。 症狀:上送過來的串經過hex2String的時候效率極低 經過研究發現是本地hex2String的方法存在問題 ---------------------old

原创 nginx反向代理實現不同域名映射到同一臺服務器的80端口

前因:原本兩個項目放在兩臺服務器,域名映射在不通外網ip的80端口。因爲預算問題,現在要把兩個不同項目放到同一臺服務器,都通過域名直接訪問(相當於是80端口)。這兩個項目都是javaweb的項目 前置準備工作-->啓動兩個服務 兩個域名需

原创 關於Base64String與圖片互轉中圖片無法正常顯示的問題

開發中遇到的一個問題,原始需求需要把圖片轉成base64String上傳到接口,接口平臺將String寫入到sftp, 後續再從sftp下載圖片。 問題:上傳的圖片下載下來打開報錯。 可能原因1:圖片轉成base64String的時候帶了

原创 java 按順序 列間用逗號隔開 逐行寫入txt文件(使用反射、linkedHashMap實現有序輸出)

主題:java生成txt文件。 這裏有個需求:按順序導出多列 列之間用逗號隔開。 有序輸出到txt ‘有序’的實現方式:1、使用java反射按屬性定義順序讀取字符串 2、使用linkedHashMap有序map來遍歷鍵值對。 支持導出流

原创 LINUX安裝配置及連接oracle數據庫

LINUX安裝配置及連接oracle數據庫   注:最開始的準備工作是下載linux下的oracle安裝包,其次是安裝圖形界面,後面的安裝需要圖形界面進行配置。這裏用到的是vnc,vnc的安裝過程已由他人寫出。 一、   安裝前的準備工作

原创 nginx實現反向代理

nginx反向代理目的是實現外網直接訪問內網的內容的一種方式。話不多說。由於是本地演示我這邊本地啓動兩個tomcat 一個掛在8080端口、一個掛在8081端口tomcat改端口這邊就不寫了第一步:修改本地host文件(C:\Window

原创 isBlank與isEmpty的區別

常用的判空有如下兩種isEmpty(String str)和isBlank(String str)、StringUtils.isEmpty(String str)      一下是二者區別:    //isBlank判斷某字符串是否爲空

原创 activeMQ將消息持久化到數據庫

本demo是將msg持久化到oracle數據庫 需要在ActiveMQ中加入jdbc依賴的jar包,實測用到的jar包有: commons-pool-1.5.4.jarcommons-dbcp-1.4.jarojdbc14-10.2.