原创 Java線程內部存儲

package com.learn.corejava.threading; import java.text.SimpleDateFormat; import java.util.Date; public class LocalTh

原创 openfire 用戶認證後所保存的用戶信息

  原文地址:https://www.zhblog.net/go/java/openfire/login-auth-save-operate?t=583  

原创 java 線程可返回值類:Future

使用多線程統計某文件夾下,所有包含關鍵字的文件數量。 每個文件夾新啓一個線程統計,需要返回線程的結果。 package com.learn.corejava.threading; import java.io.File; import

原创 Java 以線程池的方式統計文件夾

上一篇文章中 https://www.zhblog.net/go/java/tutorial/java8-future-task?t=590 是使用多線程統計文件夾,每個文件夾新啓一個線程統計。現引入線程池進行管理。 package c

原创 openfire 包路由 PacketRouter

處理所有的傳入的數據包 @Override public void route(IQ packet) { iqRouter.route(packet); } @Override public void route(Messa

原创 Java 8 接口 接口中所有方法自動是 public ,所有接口中定義方法 public 關鍵字不是必須的。

Java 8 接口   接口中所有方法自動是 public ,所有接口中定義方法 public 關鍵字不是必須的。

原创 Netty 中 Future 和 Promise 的區別

Future 和 Promise 是非常相似的概念,不同之處在於,Future 是針對尚不存在的結果的只讀容器,而 Promise 可以被寫入(通常只能寫入一次)。可以將Java 8 CompletableFuture和SettableF

原创 Java Netty Handler 程序

服務端定義了2個Handler,第一個Handler處理從客戶端接收的數據並傳遞到第二個Handler。第二個Handler輸出並返回給客戶端。   1.服務端 package com.learn.netty.handler; imp

原创 終端向 Python 傳遞代碼的方式

在終端執行 Python 代碼的常用方式。   1.通過 stdin 和 管道 echo "print('hi')" | python   將文件重定向到Python python < spam.py   2.通過 -c  如果你

原创 Netty 任務調度

Netty 中也可以進行任務調度。   1.60秒後調用一次 Channel channel = new LocalChannel(); channel.eventLoop().schedule(() -> { System.o

原创 Java Netty Codecs 程序

服務端定義了一個Handler和三個Decoder。Handler接收客戶端的信息,然後傳遞給decoder過濾處理。   1.服務端 package com.learn.netty.codecs; import io.netty.b

原创 Java NIO Channel 與 Channel 之間的傳輸

在Java NIO中,如果其中一個通道是FileChannel,則可以將數據直接從一個通道傳輸到另一個通道。 FileChannel類具有transferTo()和transferFrom()方法,該方法可以完成此操作。   1.tran

原创 java 線程池快速創建使用

package com.learn.corejava.threading; import java.util.concurrent.ExecutorService; import java.util.concurrent.Execut

原创 Java NIO Scatter 和 Gather

Java NIO帶有內置的scatter和gather支持。scatter和gather是在讀取和寫入Channel中使用的概念。 從Channel的scatter read是將數據讀取到多個緩衝區。因此,將數據從通道“分散”到多個緩衝區

原创 Java Netty Echo 程序

使用 Netty 實現的 Echo 程序:客戶端發送信息,服務端原樣返回。   1.服務端 package com.learn.netty.echo; import io.netty.bootstrap.ServerBootstrap