原创 通過方法名,調用目標對象的方法。2種實現方式的比較
使用if/else的方式,通過對方法名的判斷,調用對應的方法 優點:寫法簡單,邏輯簡單 缺點:每新增一個方法,需要新增一個if/else判斷,工作量較大 使用反射獲取目標對象所有的公共Method對
原创 使用httpclient時根據 CLOSE_WAIT 和 leased 判斷連接處理是否正確
1 CLOSE_WAIT 等待資源釋放 對應socket中,客戶端就是等待inputStream關閉,服務端就是等待outputStream關閉。 可以通過 netstate 指令獲取連接情況。 # nets
原创 lombok 封裝的對象屬性在 freemarker 中無法顯示的問題
private Long lId; private Integer nEnable; lombok 生成的get方法 getLId() freemarker 使用的get方法 getlId() 解決方法:在對象中使用freemarker的
原创 springboot + spring security + JWT 進行登錄驗證和權限管理
springsecurity 分2部分,登錄驗證和權限管理,在登錄驗證成功之後會在 SecurityContextHolder 上線文中添加 Authentication 對象,包含用戶信息和角色信息,用於權限管理和系統驗證用戶信
原创 java中匿名函數與lambda實現接口在使用上的異同
1.匿名函數和lambda實現接口在使用時都需要繼承類或者實現接口的抽象方法。 區別:匿名函數接口可以有多個抽象方法,不能有默認方法;lambda實現接口時對應的函數接口只能有一個抽象方法,但是可以有多個默認方法 2. 匿名函數和
原创 谷歌搜索方法
http://googlejsq.com/index.html 這裏面有教程
原创 無法翻牆的情況下,使用 Google 搜索 和 各種 Google 應用和插件
是不是還在苦於因爲無法翻牆而無法使用Google 搜索,是否還在苦於每次打開百度都是廣告。 現在推薦一個插件 GoogleBoost 下載後進入擴展程序,將壓縮包中的插件拖入到擴展程序中。 點擊插件即可見到可自由訪問的 Google 應用
原创 項目心得(持續更新)
1.必須得堅持自己的原則,堅持合理的項目開發,否則很可能就是挖坑 2.由多個模塊組成的業務,在不瞭解其業務的情況下,必須逐個模塊的進行修改,等到修改模塊穩定了才能進行下一個模塊的修改,在修改的過程中快速熟
原创 內存數據庫在秒殺系統中的使用
關係數據庫:mysql 內存數據庫:redis 秒殺系統一般都是大併發的update操作,如果單純對數據庫進行操作,每次update都會進行行鎖,造成時間上的浪費,使用內存數據庫redis可以有效提高update效率,然
原创 log4j日誌服務器支持分佈式和集羣
1. 將 log4j-1.2.16.jar 的源碼解壓,導入java工程2. 設置 org.apache.log4j.net.SocketServer 類的啓動參數: 4712 C:\User
原创 技術網站
web rtc視頻通信: https://tokbox.com/opentok/libraries/server/
原创 java環境配置基礎知識
1.在host文件中一個域名可以對應多個ip:通過該域名進行訪問時會使用輪循的方式,第一次會訪問第一個IP,第二次會訪問第二個IP,依次類推 127.0.0.1 mall.dafy.service mal
原创 sql基礎知識收集
1. insert into target_table select * from src_table; 對於整表插入的語句字段的對應是通過字段排列的順序來對應的,按照select 出來的字段順序與target_table的字段順序進行對
原创 mysql下的高併發SQL編寫邏輯注意事項
對於select、update、insert,在項目開發中的使用順序: 在項目開發中經常會遇到很多需要修改對某某條件下的數據進行修改或者判斷數據是否存在,存在則修改不存在則插入的,對於這樣的邏輯,必須有一個SQL優先級的概念,upd
原创 java線程創建個人見解
創建線程的2種方式:1. extends Thread2. implements Runnable 更準確的說是創建線程任務的2種方式,通過new Thread()即可創建線程,但是是一個空任務的線程,運