原创 eclipse web項目轉idea項目

步驟 導入Eclipse項目,選擇File-New-Projec from Existing Sources… 項目結構如下: 打開項目結構配置,如圖: 默認情況下,Project中的Project compiler ou

原创 SpringBoot配置類註解【@ConfigurationProperties和@EnableConfigurationProperties】

@ConfigurationProperties 案例代碼: @Data @ConfigurationProperties(prefix = "spring.httpclient") public class HttpClient

原创 kafka分區和副本機制驗證

1.三臺機器對應一個分區 目前使用kafka集羣,但是由於數據量還行,就不想使用太多的分區,所以只想弄一個分區,網上資料看了一大堆,基本都是些理論和囉嗦,於是乎自己手動來驗證下這個情況的好壞。 ① 假設是三臺機器的kafka集羣,

原创 CentOS7 安裝 Mysql5.5

安裝步驟 第1步: 檢查本地是否安裝過其他版本的mysql 命令:rpm -qa|grep -i mysql 第2步: 有些版本會自帶mariadb,需要先卸載 命令:yum -y remove maria* 第3步: 下載mys

原创 線程池:任務延時執行

需求 我在做一個導入功能,導入的邏輯都是調用的頁面接口。 接口執行邏輯:將數據保存到數據庫,然後再調用job任務加工歷史數據。 用戶在頁面上操作是OK的,畢竟每操作一下,接口最多調用一次。 但是導入就不一樣了,相當於用戶一直在對着

原创 固定線程數newFixedThreadPool線程池用法

假設有10個任務,需要指定5個線程去執行它們,代碼如下: public class Test { public static void main(String[] args) { ExecutorServ

原创 併發學習(二)Lock簡介

有了synchronized怎麼還需要Lock 併發書上是這麼介紹的 鎖是用來控制多個線程訪問共享資源的方式,一般來說,一個鎖能夠防止多個線程同時訪問共享資源(但是有些鎖可以允許多個線程併發的訪問共享資源,比如讀寫鎖)。在Lock

原创 Kafka報錯:Configured broker.id 2 doesn't match stored broker.id 0 in meta.properties.

原因 之前服務器ip地址是動態的,後來改爲靜態ip地址後,kafka的一些配置都做了調整,導致我原來server.properties裏的broker.id跟kafka日誌目錄下的meta.properties裏的broker.i

原创 SpringBoot啓動配置類(一)【@Configuration和@Bean用法】

以前使用springmvc框架的時候,需要在xml裏配置bean,如數據庫連接池、事務等。現在採用springboot則告別了那些配置,只需要靈活的加上一些註解即可。總之,不管採用何種配置,最終的目的都是爲了讓配置的內容被spri

原创 jvm(五)方法區、堆和虛擬機棧內存溢出

關於方法區、堆和虛擬機棧我們已經知道了它們的職責。 這裏會有個疑惑的地方: 方法區存放的是類的元信息、靜態變量和常量,存滿了怎麼辦? 堆存放的是對象,存滿了怎麼辦? 虛擬機棧會進行一系列方法的壓棧出棧,棧滿了怎麼辦? 其實好辦,這

原创 mybatis:Error querying database. Cause: java.lang.NullPointerException

mybatis配置沒問題,但是報錯 這是我第二次踩這個坑了,因此有必要記下。 朋友: 如果你也是用的weblogic10.3的話, 如果你也是發現mybatis明明sql沒配錯, 那麼,你可能需要看下weblogic的ojdbc6

原创 ./startWebLogic.sh: line 186: 20270 Killed ${JAVA_HOME}/bin/java ${JAVA_VM}

報錯原因 weblogic啓動好了後,中途做性能測試,在100併發下報錯,服務自動停掉了。報錯提示如下: ./startWebLogic.sh: line 186: 20270 Killed ${JAVA_HOME}/bin/

原创 Windows下安裝Oracle 11g

下載地址 https://pan.baidu.com/s/1z5wVv46XgFqpBcFLqZ3mUw 提取碼:nmx1 開始安裝 第1步:找到安裝文件“setup.exe”,雙擊進行安裝。 第2步:配置安全更新。電子郵件可寫

原创 jvm(一)class文件如何加載到jvm

編譯好的class文件如何被加載到jvm中?相信只要去鑽研的小夥伴們都會產生這個疑問,下面我就來談談我個人的理解。 首先,官網上是分爲這麼幾個步驟:加載、鏈接以及初始化。爲了方便理解,我這裏採用圖解來描述。 裝載(Load) 這

原创 併發學習(六)Condition的使用及原理

wait和notify實現生產者消費者模式 講Condition之前,有必要再熟悉下wait和notify結合synchronized實現線程的通信,比如實現生產者和消費者模式。案例代碼如下。 public class Produ