原创 Java學習(25) -- 源碼閱讀(ThreadLocal)

 想必很多朋友對ThreadLocal並不陌生,今天我們就來一起探討下ThreadLocal的使用方法和實現原理。首先,本文先談一下對ThreadLocal的理解,然後根據ThreadLocal類的源碼分析了其實現原理和使用需要注意的地方

原创 Java學習(13) -- 泛型

一、什麼是泛型             泛型,即“參數化類型”。一提到參數,最熟悉的就是定義方法時有形參,然後調用此方法時傳遞實參。那麼參數化類型怎麼理解呢?顧名思義,就是將類型由原來的具體的類型參數化,類似於方法中的變量參數,此時類型也

原创 Java學習(29) -- 併發編程(線程)

一、什麼是線程 線程是一個程序的順序控制流; 二、線程與進程的區別 1)每個進程都有獨立的代碼和數據空間(進程上下文),進程的切換會有較大的開銷; 2)線程可以看做輕量級的進程,同一類線程共享代碼和數據空間,每個線程都有獨立的運行棧和程序

原创 Java學習(29) -- 併發編程(併發與並行)

一、什麼是併發 指應用能夠交替執行不同的任務,其實併發有點類似於多線程的原理,多線程並非是同時執行多個任務,如果你開兩個線程執行,就是在你幾乎不可能察覺到的速度不斷去切換這兩個任務,已達到"同時執行效果",其實並不是的,只是計算機的速度太

原创 Java學習(14) -- 單元測試

一、junit https://blog.csdn.net/fulishafulisha/article/details/80158392 二、mock https://www.cnblogs.com/zjoch/p/6565956.ht

原创 Centos 安裝 Jenkins

1、本地安JDK1.8以上 2.  下載 jenkins #創建存放文件建 cd /home #創建jenkins文件夾及日誌文件夾 mkdir jenkins_new/logs #切換該目錄下下載jenkins cd jenk

原创 Centos7 安裝rabbitmq 安裝記錄

一、 rabbitmq 使用場景,用作與微服務之間的事件通知和日誌記錄傳輸 二、rabbitmq 安裝 erlang 1. rabbitmq是erlang語言編寫的,安裝rabbitmq之前,需要先安裝erlang,這裏用erlang的源

原创 Centos 安裝 Redis

1. 切換至目錄 cd /usr/local 2. 下載Redis 安裝包 wget http://download.redis.io/releases/redis-4.0.6.tar.gz 3. 解壓安裝 yum install

原创 SpringMVC+ajaxfileupload+ajax文件上傳V2.0

1. 編寫ajaxfileupload初始化組件,可以不用次次初始化組件//點擊轉移 function clickEle(elementId) { $("#" + elementId).click(); } //文件異步上傳 funct

原创 mybatis執行sql語句

目的: 1. 解決統計(求和、數量)需要去配置xml的問題。 2. 解決返回字段未知情況 3. mybatis 執行自定sql 一、 sql組裝工具類 package com.onem2.pingmi.base.common.util

原创 Centos 的 Shell 腳本定時執行SQL語句

目的:解決每天重複刷新數據的問題;1. 編寫Shell 腳本excute_mysql.sh#!/bin/bash # Define log TIMESTAMP=`date +%Y%m%d%H%M%S` LOG=call_sql_$

原创 Mybatis 動態組裝查詢條件,仿SQL模式

目的: 以前比較習慣使用Hibernate,後來覺得mybatis不能按我想要的自動組裝爲SQL查詢條件,所以提供該工具類; 效果圖:   如圖所示,根據條件自動組裝查詢條件,下面來說一下實現方法: 1. ServiceImpl書寫注

原创 SpringBoot 集成 Dubbo

1. 搭建zookeeper環境#下載zookeeper wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz #解

原创 本地證書生成

keytool -genkey -alias (別名) -keypass 123456 -keyalg RSA -keysize 1024 -validity 365 -keystore E:/keys/tomcat.keystore -