原创 hjr-JAVA git一些使用技巧
使用方式 一般有兩種使用方式 使用命令行 使用ide自帶的插件,區別就是一個用鼠標點擊操作,一個用命令行鍵盤輸入指令操作 開發方式 首先新建一個項目 ,然後創建master分支,創建dev分支,分別對應生產環境和測試環境。
原创 hjr-JAVA 關於文件上傳與解壓與excel導出
<form method="post" action="url" <input type="file" name="uploadFile"/> <br/><br/> <input
原创 hjr-JAVA java.util.concurrent
tools 一些多線程場景用到的工具 CountDownLatch (倒計時器):一個線程等待倒計時數目個線程都執行完畢後在一起做一件事,只能使用一次 如 如計算10個人12個月內的工資詳細然後計算一共交多少稅,可以將線程分爲1
原创 hjr-JAVA SpringMVC+Mybatis-generate 模型設計
控制器 接收參數可以用 public WarpJson fun(@RequestBody ModelVo modelVo,@RequestParam("id") String projectId,Integer page, In
原创 hjr-關於樹
引言 樹是一種數據結構,對於數據結構,需要記住的是概念特點,和具有的功能 根節點:最上面的那個節點 葉子節點:最下面一層的節點 二叉排序樹(二叉查找樹): 每個節點一個元素,兩個分支,當插入有序數列會造成單枝 特點 左子節點
原创 hjr-JAVA Redis使用詳解
使用 redis是KV型的內存數據庫,在java中使用Redis,需要在Pom中引用Jedis包,之後新建Config類進行基本配置,在使用處例化Jedis,之後對Redis進行各種操作 常用數據結構 String:普通的ky結
原创 hjr-linux:nginx負載均衡
在集羣系統中,請求 ->nginx->分發到多個tomcat服務器 DNS層 可以採用一個DNS service 把請求的網址解析成多個ip,每個ip對應到一個tomcat服務器 服務器層 可以在nginx的conf文件中把多個服
原创 hjr-JAVA JVM調優
理解 JVM結構 JVM 執行順序 : class文件-》類裝載器 - 》內存區-》執行引擎 類加載器採用parent模型避免父子加載器重複加載,主要包含,java內部庫加載器-》java擴展類庫加載器-》程序員代碼類加載器-》
原创 hjr-幾種排序算法
概念 穩定 排序的數組裏面重復的元素相對位置不會改變 寫法 一個方法,傳參是一個數組,裏面n個不規則數字,多用for循環和遞歸思想 實現 冒泡排序 n*n次遍歷,兩個for循環嵌套。每次比較都把小的值往左移動 插入排序
原创 hjr-java源碼: SimpleDateFormat
分類 三種操作時間的方法都不是線程安全的 SimpleDateFormat類主要用於轉換格式,String←→Date; Date類用於獲取毫秒數,或者設置Calendar對象的參數,date.getTime()、cale
原创 hjr-設計模式:單例模式
實現 使用單例,使用getInstance獲取對象實例而不用new創建新的實例 getInstance:做一個判斷,如果已經存在則直接獲取對象,不存在會new 一個對象 新建一個單例類,做判斷,如果該實例不存在則new 一個實例,
原创 hjr-JAVA 多線程鎖與分佈式鎖
鎖 多個線程或多個進程在同時改變某個共享變量時,需要對變量或代碼塊做同步(鎖),使其在修改這種變量時能夠線性執行 怎麼加鎖 CAS:(原子操作)將預期值與內存實際值比較,當相等時,把內存實際值修改爲期望值 CAS 的 ABA問題,
原创 hjr-JAVA HashMap
理解 散列算法:把多個數據用少量數據標記出來 hashing(哈希):標記是hashcode的散列算法 HashMap的結構是 包含多個HashCode的數組,每個HashCode對應一個Bucket(桶),每個桶是一個Lin
原创 hjr-linux:centos7 docker
理解 docker是安裝在linux 系統裏的一個程序,這個程序有linux的內核 docker可已安裝多個鏡像,所有鏡像共用docker裏的Linux內核 虛擬機可以安裝各種操作系統,各種系統裏可以跑各種程序,docekr只能
原创 hjr-JAVA webservice
如果你用springboot時遇到了webservice啓動成功了,但是其他的接口卻變404了 配置文件可以參考下文 webservice有別於控制器裏的api 同一個端口,可以同時發佈webservice服務和普通api 可以這