原创 JSONObject轉換
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.41</version> </
原创 演示調用sleep方法,鎖是否釋放
/** * 演示調用sleep方法,鎖是否釋放 */ public class SleepLock { private Object lock = new Object(); private class Threa
原创 演示AtomicInteger的使用
import java.util.concurrent.CountDownLatch; import java.util.concurrent.atomic.AtomicInteger; /** * 演示AtomicInteger的
原创 allMatch用法
import com.it.vo.Student; import java.util.ArrayList; import java.util.List; /** * 方法allMatch(Predicate p) 傳入一個斷言型函數
原创 集合交集(判斷兩個集合是否有相同的元素)
import java.util.ArrayList; import java.util.List; /** * 有兩個集合A和B,判斷這兩個集合是否包含相同的元素, * 可以使用retainAll方法:A.retainAll(B
原创 Spring Bean的初始化與銷燬方式三
可以使用JSR250規則定義的(java規範)兩個註解來實現 @PostConstruct: 在Bean創建完成,且屬於賦值完成後進行初始化,屬於JDK規範的註解 @PreDestroy: 在bean將被移除之前進行通知, 在容器銷燬之前
原创 Spring Bean的初始化與銷燬方式,指定初始化initMethod和指定銷燬destroyMethod方法
1、pom.xml文件依賴 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId>
原创 拿到map對應節點的數據集合數據工具類
public static List selectNodesByPath(Map<String, Object> map, String path) { String[] split = path.split("/");
原创 Spring Bean的初始化與銷燬方式二
實現InitializingBean接口的afterPropertiesSet()方法,當beanFactory創建好對象,且把bean所有屬性設置好之後,會調這個方法, 相當於初始化方法;實現DisposableBean的destory
原创 IDEA 快捷鍵 持續更新
1、Ctrl+F12:顯示當前文件的結構 2、Ctrl+N:查找類 3、Ctrl+P:方法參數提示顯示 4、Ctrl+F:在當前文件進行文本查找 5、Alt+Insert:生成構造器、Getter、
原创 實現一個自己的類ReentrantLock
import java.util.concurrent.TimeUnit; import java.util.concurrent.locks.AbstractQueuedSynchronizer; import java.util.c
原创 三個線程,線程A不停打印A、線程B不停的打印B、線程C不停的打印C
/** * 三個線程,線程A不停打印A、線程B不停的打印B、線程C不停的打印C, * 如何通過synchronized、wait、notifyAll(或notify)的組合,使三個線程不停地且順序地打印出ABCABC */ p
原创 演示Callable Future FutureTask的使用
get():獲取任務執行結果,如果任務還沒完成(state<=COMPLETING),則會阻塞等待直到任務執行完成;如果任務被取消,則會 拋出CancellationException異常;如果任務執行過程發生異常,則會拋出Ex
原创 用Arrays類截取路徑
import java.util.Arrays; import java.util.stream.Collectors; public class Test { public static void main(String [
原创 筆試題:子線程循環5次,接着主線程循環10次,接着又回到子線程循環5次,接着再回到主線程又循環10次,如此循環8次。
/** * 子線程循環5次,接着主線程循環10次,接着又回到子線程循環5次, * 接着再回到主線程又循環10次,如此循環8次。 */ public class UserThread { private static cl