原创 自定義 Java ClassLoader

首先看一下 java.lang.ClassLoader 方法 loadClass(String name) 方法的源碼 public Class<?> loadClass(String name) throws ClassNotFound

原创 使用redis創建自己的分佈式鎖

作者 QQ 1135409377 歡迎加Q 交流 RedisLock 簡介 1:支付公平鎖,非公平鎖(只是在單機器範圍內) 2:不支持鎖的重入(即 同一個線程,不能獲取同一把鎖兩次及以上) 3:一個redis的key對應一個鎖 4:

原创 java自定義線程阻塞

線程問題如果想交流的話可以加我qq 1135409377。 LockSupport api 說明 說明:LockSupport 底層是通過,sun.misc.Unsafe實現的。 1:public static Object getBlo

原创 根據表結構自動生成mybatis文件

版本由1.0升級2.0 (功能添加了挺多的就不一一說明了) 版本有2.0升級爲2.1(新增創建動態sql時,創建 模糊查詢(like) sql) (本人QQ:1135409377,加好友請寫 “根據表結構自動生成mybatis文件”)

原创 在web項目中使用 ThreadLocal 要謹慎,使用不當容易造成內存溢出

這裏使用的servlet容器是 tomcat 如果在web項目中,使用 ThreadLocal 不當,會造成 OutOfMemoryError。 說明原因前 1:先講一下 ThreadLocal,Thead,ThreadLocalMap

原创 zookeeper學習-3(如何使用zookeeper進行集羣管理-java版本)

使用場景 整個系統中分master和server兩種角色,每個master、server都需要知道集羣內當前可用的server列表。 原處理方式:master負責集羣server信息的收集和分發。server啓動後和master建立長連接

原创 Web監聽器導圖詳解

Web監聽器導圖詳解 原文地址:點擊查看原文

原创 ajax 跨域請求(後端語言爲 Java)

ajax 跨域請求(servlet容器爲tomcat) 有兩種解決辦法 1:jquery jsonp方式(據說不支持 POST,即使將 type 的值修改爲 POST ,也會被當成 GET 請求) js示例代碼 function

原创 freemarker如何編寫自定義標籤

編寫自定義標籤需要實現 freemarker.template.TemplateDirectiveModel 接口 demo如下 freemarker模板 freemarker自定義標籤.ftl <#assign x = 1>

原创 cookie 小解

cookie的組成 name 名稱 value 內容 Domain 作用域 Path 作用路徑 Max-Age 多少秒後過期 HttpOnly 腳本不可訪問 Secure 只有在https下才

原创 Spring ContextLoaderListener與DispatcherServlet所加載的applicationContext的區別

點擊查看原文地址 spring通過在web.xml 中配置ContextLoaderListener 來加載context配置文件,在 DispatcherServlet中也可以來加載spring context配置文件,那麼這兩個有什麼

原创 基於Java NIO 的socket通信實例

服務端代碼 package com.lp.socket; import java.io.IOException; import java.net.InetSocketAddress; import java.nio.ByteBuffer

原创 基於 java nio 長連接實現的聊天室

TCP長連接與短連接的區別 基於 java nio 長連接實現的聊天室,如果併發量大的話,可能會有線程問題。 服務端代碼 package com.lp.io.socket; import java.io.IOException; imp

原创 apache-common-pool2(配置參數詳解,以及資源回收,從池中獲取資源,將資源返還給池 邏輯解析)

本人基於 commons-pool2-2.3.jar 進行分析的,查看了jar的源碼,分析源碼的工作原理,總結出來的。 maxTotal 允許創建資源的最大數量,默認值 8,-1 代表無數量限制(int類型) blockWhenExha