原创 Java網絡編程C/S模型

支持多個客戶端連接服務器:添加java文件在main函數調用new一個新的客戶端 服務器支持羣發和私聊信息:羣發直接發送就行,私聊在消息前加上客戶端端口號+“:”,如“49761:你好啊” 客戶端: package CS; impo

原创 Java多線程之生產者消費者模式

生產者消費者模式是併發、多線程編程中經典的設計模式,生產者和消費者通過分離的執行工作解耦,簡化了開發模式,生產者和消費者可以以不同的速度生產和消費數據。生產者和消費者模式在生活當中隨處可見,它描述的是協調與協作的關係。 比如一個人正在

原创 徹底搞懂Java 字符串常量池和intern方法

前言: 該文章是本人看了不少的博客資料總結出來的,並經過親自驗證,以下儘量用最簡單的語言來解釋,希望讀者看完是徹底理解而不是死記硬背。 本文會在創建字符串和關於intern方法的使用來展開對字符串常量池的理解。 意義: 避免相同字符串

原创 十大排序算法(Java實現)

冒泡排序: //冒泡排序 public static int[] bubbleSort(int[] arr) { for (int i = 0; i < arr.length - 1; i++) {

原创 volatile關鍵字的簡單使用

關於這個關鍵字的使用,無敵推薦一篇文章:https://www.cnblogs.com/dolphin0520/p/3920373.html# 這裏只是簡單總結一下: 一旦一個共享變量(類的成員變量、類的靜態成員變量)被volatil

原创 TCP三次握手四次揮手

轉載:https://blog.csdn.net/qq_38950316/article/details/81087809     序列號seq:佔4個字節,用來標記數據段的順序,TCP把連接中發送的所有數據字節都編上一個序號,第一

原创 各種單例模式

單例模式是一種重要的設計模式 餓漢式: class Singleton1{ private Singleton1(){}; private static Singleton1 singleton1 = new Sing

原创 java常量池

java一共實現了6中基本類型的常量池:Byte , Short,Integer,Long,Boolean,Characher。(Double和Float沒有實現) 和一種String的常量池,他們在內存的方法區裏 String常量池

原创 悲觀鎖和樂觀鎖通俗描述與實現方案

之前在接觸到這個概念時,看了一些博客,一會又說synchronized,一會又扯數據庫裏面的行級鎖,說得朦朦朧朧煩得要死,也肯定是本人理解能力有問題,無論如何,現在終於大概有些理解了,特地記錄一下 首先!悲觀鎖和樂觀鎖是兩個大的抽象概

原创 對稱加密,非對稱加密,數字簽名,數字證書全解析

http協議是一種非加密傳輸的協議,數據是在80端口以明文的方式所傳輸,存在安全問題 https則提供了加密傳輸,加密方式有兩種:對稱加密,非對稱加密 對稱加密: 描述: 加密解密都是同一把鑰匙,效率很高。 要發送數據時,先提前以明文

原创 java四種線程池配置詳解

參考:https://www.cnblogs.com/dolphin0520/p/3932921.html 做下總結: java線程池的主要類是ThreadPoolExecutor 此類是java線程池的核心類,後面介紹的四種線程池

原创 安裝eclipse的spring插件sts出錯顯示org.codehaus.groovy.eclipse xxxxx is unknown in the solver

在eclipse安裝springsource-tool-suite插件的時候常常會有問題,基本是由於插件版本和eclipse的版本不兼容,到官網(https://spring.io/tools3/sts/all)下載一個合適自己ecl

原创 把web項目導入eclipse 報錯(有紅叉)原因分析

根據個人經驗,目前碰到過三種情況。 情況一: 表現: jsp開頭顯示紅色報錯 原因: 沒配置tomcat運行環境 解決方案: 項目右鍵->Build Path->Configure Build Path ->add library->

原创 IntelliJ IDEA 2018.3.3破解方法

參考:https://www.52pojie.cn/thread-853109-1-1.html https://blog.csdn.net/shengshengshiwo/article/details/79599761 上面兩個鏈

原创 servlet輸出中文亂碼(問號)解決

在get和post方法里加上以下代碼把request和response編碼格式改爲utf-8: request.setCharacterEncoding(“utf-8”); response.setContentType(“text/