Time of Update: 2018-07-27
-----------------siwuxie095 工程名:TestUI 包名:com.siwuxie095.ui 類名:TestPanel.java 工程結構目錄如下:
Time of Update: 2018-07-27
package model;import java.text.SimpleDateFormat;import java.util.Date;import org.apache.commons.lang.StringUtils;import org.apache.commons.lang.builder.ToStringBuilder;public class Person { private String name; private int age; private
Time of Update: 2018-07-27
在java.util.concurrent.locks包中有很多Lock的實作類別,常用的有ReentrantLock、ReadWriteLock(實作類別ReentrantReadWriteLock),其實現都依賴java.util.concurrent.AbstractQueuedSynchronizer類,實現思路都大同小異,因此我們以ReentrantLock作為講解切入點。 1. ReentrantLock的調用過程
Time of Update: 2018-07-27
最近在刷《劍指offer》裡的編程題,但是網上關於《劍指offer》的解答多半是C或者C++的,而且官方(作者)也是在用C++進行講解,這裡自己用java寫了一些題目的解答代碼(當然也有部分是借鑒了網上別人的解答的,出處未註明敬請之處請指出,侵刪),希望能對大家的學習有所協助。 題目描述 請實現一個函數,將一個字串中的空格替換成“%20”。例如,當字串為We Are Happy.則經過替換之後的字串為We%20Are%20Happy。 牛客網題目截圖:
Time of Update: 2018-07-27
更多技術文章請訪問我的個人部落格http://www.rain1024.com 在用搜尋引擎搜尋時,所輸入的字元通常會被編碼然後再查詢,這篇文章將Java中對UTF8字元編碼方式的檢測,UTF8URL編碼解碼的代碼掛了出來,需要時改變main函數中的url然後直接運行即可。 package com.rain.demo;import java.io.UnsupportedEncodingException;public class UTF8{ /** * Utf8URL編碼 *
Time of Update: 2018-07-27
Java在JDK 5中引入了泛型,使用起來方便了很多,下面是一段很常見的泛型使用: List<String> list = new ArrayList<String>(); 泛型方法使用 不僅集合中可以使用,在定義類、介面和方法的時候也是經常使用的,但是關於泛型方法使用的情境還是不太多。下面從求兩個數的最大數的實現上來看一下泛型類和泛型方法的簡單使用: 泛型類(介面) package me.codeboy.test;/** * generic
Time of Update: 2018-07-27
說到happen before,很多人都知道。但因為其理論的抽象,以及在語義上的微妙,使得對happen before的理解,往往陷入“隔靴搔癢“的境地。本文試圖宏觀性、多角度的來分析圍繞happen before的諸多問題,從而搞清楚我們為什麼需要happen before? -可見度 -重排序 -happen before -共用儲存模型 vs. 訊息模型 可見度
Time of Update: 2018-07-27
在JUC包中,線程池部分本身有很多組件,可以說是前面所分析的各種技術的一個綜合應用。從本文開始,將綜合前面的知識,逐個分析線程池的各個組件。 -Executor/Executors -ThreadPoolExecutor使用介紹 -ThreadPoolExecutor實現原理 –ThreadPoolExecutor的中斷與優雅關閉 shutdown + awaitTermination –shutdown的一個誤區 Executor/Executors
Time of Update: 2018-07-27
線程共用受限資源 1、基本上所有的併發模式在解決線程衝突的時候,都是採用 序列化訪問共用資源的方案,這一位著在給定時刻只允許一個任務訪問共用資源; 這通常是在代碼前加上一條鎖語句實現的,這種機制常常被稱為 互斥量(mutex); 2、隱式加鎖同步:使用synchronized關鍵字 1)共用資源一般是以對象形式存在的
Time of Update: 2018-07-27
package com.simpleton.cache; /** * <p>Title: </p> * * <p>Description: 緩衝DTO</p> * * <p>Copyright: Copyright (c) 2008</p> * * <p>Company: </p> * * @author Deepblue 2008-11-11 *
Time of Update: 2018-07-27
轉載請註明出處:http://blog.csdn.net/xiaojimanman/article/details/17681605 從今天起,開始寫java中關於排序演算法的實現。 這篇就先只介紹快速排序和冒泡排序在java中的一個實現方法,其中快速排序採用遞迴實現;冒泡排序採用了for迴圈和遞迴兩種實現方式。 /** *@Description: 排序演算法
Time of Update: 2018-07-27
曾經到一家公司面試,面試中問了java設計模式中的單例模式,讓我用筆寫出來,當時可能自己的技術還沒有形成體系,思路也不是很清晰,結果在一張紙上面寫的亂七八糟的,塗抹的不成樣子,不堪入目。時常想起當時的情境,真的很難讓自己忘掉,但是這種經曆對我來說也是有好處的,讓我對單例模式有了更多的認識。 首先想一下如何能保證一個Java類在整個應用上下文多線程環境當中只有一個: 第一點:不能寫public的構造器,避免對該類進行new對象操作;
Time of Update: 2018-07-27
一、什麼是緩衝 1、Cache是高速緩衝儲存空間 一種特殊的儲存空間子系統,其中複製了頻繁使用的資料以利於快速存取 2、凡是位於速度相差較大的兩種硬體/軟體之間的,用於協調兩者資料轉送速度差異的結構,均可稱之為 Cache 二、緩衝的分類 1、基於web應用的系統架構圖 2、在系統架構的不同層級之間,為了加快訪問速度,都可以存在緩衝 作業系統磁碟緩衝->減少磁碟機械操作 資料庫緩衝->減少檔案系統I/O
Time of Update: 2018-07-27
用JAVA代碼對輸入的內容做check ,只允許輸入英文+數字+ - 符號的組合,長度不能超過20. 具體實現如下: private boolean checkInput(String input){ Pattern pattern = Pattern.compile("^[A-Za-z0-9-]{0,20}$"); Matcher m = pattern.matcher(input); if(
Time of Update: 2018-07-27
反射機制是什麼 反射機制是在運行狀態中,對於任意一個類,都能夠知道這個類的所有屬性和方法;對於任意一個對象,都能夠調用它的任意一個方法和屬性;這種動態擷取的資訊以及動態調用對象的方法的功能稱為java語言的反射機制。 ** 反射機制能做什麼 ** 反射機制主要提供了以下功能: 在運行時判斷任意一個對象所屬的類; 在運行時構造任意一個類的對象; 在運行時判斷任意一個類所具有的成員變數和方法; 在運行時調用任意一個對象的方法; 產生動態代理。
Time of Update: 2018-07-27
逾時控制是我們在系統中容易忽視卻又不能忽視的功能。一方面,逾時並不是我們系統的主要業務功能,大多數逾時控制已經被虛擬機器或者伺服器實現了;另一方面,逾時控制是許多業務必備的隱性功能,試想,一個web應用如果在10秒預設逾時過後才響應,客戶能夠忍受嗎。 這篇文章主要總結了一些常見的逾時處理機制,以及適用的情境。
Time of Update: 2018-07-27
原創 兩毛五哥哥 2017-03-19 23:54 熱部署是指在你修改項目BUG的時候對JSP或JAVA類進行了修改在不重啟WEB伺服器前提下能讓修改生效(對設定檔的修改除外)。 如果你使用的最新版的Myeclipse或者是 intellij idea編輯器的話,不存在熱部署的問題,強大的idea已經幫你配置好了。如果你不會配置,看下圖。 idea的配置
Time of Update: 2018-07-27
1、toString()就是是重寫,對於一般的對象來說都會有這個方法,其實這個方法的目的,主要就是將對象按字串的方式輸出出來:打個比方,比如一個People類,裡邊有name,age這兩個屬性, 如果你People p = new People(); p.toString(); 這麼做的話,預設輸出就是一個記憶體位址。 那麼你會想到重寫ToString();這個方法,按自己的方式去輸出。
Time of Update: 2018-07-27
package avlbinarytree; import java.util.Stack; public class AVLSortTree<T extends Comparable<T>> { private AVLNode<T> root; public AVLSortTree() { } public
Time of Update: 2018-07-27
什麼是反射 反射是一種電腦處理方式。有程式可以訪問、檢測和修改它本身狀態或行為的這種能力。能提供封裝程式集、類型的對象。對於Java這種OOP語言來講,運行狀態中,我們可以根據“類的部分資訊”來還原“類的全部資訊”,這就是Java中的反射。 Java虛擬機器的體繫結構