diff --git a/Spring-Boot/src/main/java/com/bruis/learnsb/listener/TestListener.java b/Spring-Boot/src/main/java/com/bruis/learnsb/listener/TestListener.java new file mode 100644 index 0000000..94c050b --- /dev/null +++ b/Spring-Boot/src/main/java/com/bruis/learnsb/listener/TestListener.java @@ -0,0 +1,13 @@ +package com.bruis.learnsb.listener; + +import org.springframework.boot.SpringApplicationRunListener; + +/** + * 重写启动监听 + * + * @author weiyu + * @version v1.0 + * @date 2021-07-27 22:26 + */ +public class TestListener implements SpringApplicationRunListener { +} diff --git a/Spring-Netty/pom.xml b/Spring-Netty/pom.xml index 14ee73a..243291b 100644 --- a/Spring-Netty/pom.xml +++ b/Spring-Netty/pom.xml @@ -46,6 +46,14 @@ org.springframework.boot spring-boot-maven-plugin + + org.apache.maven.plugins + maven-compiler-plugin + + 8 + 8 + + diff --git a/Spring-Netty/src/main/java/com/bruis/learnnetty/binary/BinaryTest.java b/Spring-Netty/src/main/java/com/bruis/learnnetty/binary/BinaryTest.java index 124947d..a843022 100644 --- a/Spring-Netty/src/main/java/com/bruis/learnnetty/binary/BinaryTest.java +++ b/Spring-Netty/src/main/java/com/bruis/learnnetty/binary/BinaryTest.java @@ -8,11 +8,11 @@ public static void main(String[] args) { int a = -16; - /** + /* * 由于二进制运算都是用补码来进行的,因为换算为补码后可以让最高位来参与运算。 */ System.out.println(Integer.toBinaryString(a)); System.out.println(Integer.toUnsignedString(a)); System.out.println(a << 2); } -} +} \ No newline at end of file diff --git a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/BusinessException.java b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/BusinessException.java index e9e5caf..0a7ed9a 100644 --- a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/BusinessException.java +++ b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/BusinessException.java @@ -1,5 +1,8 @@ package com.bruis.learnnetty.netty.channelpipeline; +/** + * @author auto + */ public class BusinessException extends Exception { public BusinessException(String message) { diff --git a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/InBoundHandlerA.java b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/InBoundHandlerA.java index 31004a3..47c0b48 100644 --- a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/InBoundHandlerA.java +++ b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/InBoundHandlerA.java @@ -4,7 +4,7 @@ import io.netty.channel.ChannelInboundHandlerAdapter; /** - * @author + * @author auto */ public class InBoundHandlerA extends ChannelInboundHandlerAdapter { diff --git a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/InBoundHandlerB.java b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/InBoundHandlerB.java index 270d84f..e33fba7 100644 --- a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/InBoundHandlerB.java +++ b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/InBoundHandlerB.java @@ -4,7 +4,7 @@ import io.netty.channel.ChannelInboundHandlerAdapter; /** - * @author + * @author auto */ public class InBoundHandlerB extends ChannelInboundHandlerAdapter { @Override diff --git a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/InBoundHandlerC.java b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/InBoundHandlerC.java index e4dcd7e..43dd7c4 100644 --- a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/InBoundHandlerC.java +++ b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/InBoundHandlerC.java @@ -2,10 +2,9 @@ import io.netty.channel.ChannelHandlerContext; import io.netty.channel.ChannelInboundHandlerAdapter; -import io.netty.util.ReferenceCountUtil; /** - * @author + * @author auto */ public class InBoundHandlerC extends ChannelInboundHandlerAdapter { @Override diff --git a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/OutBoundHandlerA.java b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/OutBoundHandlerA.java index 4711fd5..d55f6c8 100644 --- a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/OutBoundHandlerA.java +++ b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/OutBoundHandlerA.java @@ -5,7 +5,8 @@ import io.netty.channel.ChannelPromise; /** - * @author + * @author auto + * */ public class OutBoundHandlerA extends ChannelOutboundHandlerAdapter { diff --git a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/OutBoundHandlerB.java b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/OutBoundHandlerB.java index 05a74fd..f2fdb98 100644 --- a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/OutBoundHandlerB.java +++ b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/OutBoundHandlerB.java @@ -7,7 +7,7 @@ import java.util.concurrent.TimeUnit; /** - * @author + * @author auto */ public class OutBoundHandlerB extends ChannelOutboundHandlerAdapter { @Override diff --git a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/OutBoundHandlerC.java b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/OutBoundHandlerC.java index 6b49e11..6e681ae 100644 --- a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/OutBoundHandlerC.java +++ b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/OutBoundHandlerC.java @@ -5,7 +5,7 @@ import io.netty.channel.ChannelPromise; /** - * @author + * @author auto */ public class OutBoundHandlerC extends ChannelOutboundHandlerAdapter { diff --git a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/Server.java b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/Server.java index dbcd6f7..3efa096 100644 --- a/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/Server.java +++ b/Spring-Netty/src/main/java/com/bruis/learnnetty/netty/channelpipeline/Server.java @@ -11,7 +11,7 @@ import io.netty.util.AttributeKey; /** - * @author + * @author auto */ public final class Server { diff --git a/Spring-Netty/src/main/java/com/bruis/learnnetty/test/TimeServer.java b/Spring-Netty/src/main/java/com/bruis/learnnetty/test/TimeServer.java new file mode 100644 index 0000000..f54db36 --- /dev/null +++ b/Spring-Netty/src/main/java/com/bruis/learnnetty/test/TimeServer.java @@ -0,0 +1,41 @@ +package com.bruis.learnnetty.test; + +import java.io.IOException; +import java.net.ServerSocket; +import java.net.Socket; + +/** + * TODO 类描述 + * + * @author weiyu + * @version v1.0 + * @date 2021-07-27 22:15 + */ +public class TimeServer { + public static void main(String[] args) throws IOException { + int port =8080; + if(args != null && args.length >0){ + try { + port =Integer.valueOf(args[0]); + + }catch ( NumberFormatException e){ + // 采用默认值 + + } + + } + + ServerSocket server =null; + try { + server =new ServerSocket(port); + System.out.println("the time server is start in port "+port); + Socket socket = null; + while (true){ + socket = server.accept(); + new Thread(new TimeServerHandler()).start(); + } + }catch (Exception e){ + + } + } +} diff --git a/Spring-Netty/src/main/java/com/bruis/learnnetty/test/TimeServerHandler.java b/Spring-Netty/src/main/java/com/bruis/learnnetty/test/TimeServerHandler.java new file mode 100644 index 0000000..4a6dcf8 --- /dev/null +++ b/Spring-Netty/src/main/java/com/bruis/learnnetty/test/TimeServerHandler.java @@ -0,0 +1,15 @@ +package com.bruis.learnnetty.test; + +/** + * TODO 类描述 + * + * @author weiyu + * @version v1.0 + * @date 2021-07-27 22:19 + */ +public class TimeServerHandler implements Runnable{ + @Override + public void run() { + + } +} diff --git "a/note/JDK/\346\267\261\345\205\245\345\255\246\344\271\240Thread\345\272\225\345\261\202\346\272\220\347\240\201.md" "b/note/JDK/\346\267\261\345\205\245\345\255\246\344\271\240Thread\345\272\225\345\261\202\346\272\220\347\240\201.md" index b0b44b9..d068cf9 100644 --- "a/note/JDK/\346\267\261\345\205\245\345\255\246\344\271\240Thread\345\272\225\345\261\202\346\272\220\347\240\201.md" +++ "b/note/JDK/\346\267\261\345\205\245\345\255\246\344\271\240Thread\345\272\225\345\261\202\346\272\220\347\240\201.md" @@ -75,7 +75,7 @@ public final static int MAX_PRIORITY = 10; #### 4.1 start 启动线程 -``` +``` java // 该方法可以创建一个新的线程出来 public synchronized void start() { // 如果没有初始化,抛异常 @@ -111,7 +111,7 @@ private native void start0(); 下面只贴出部分关键源码: -``` +``` java // 无参构造器,线程名字自动生成 public Thread() { init(null, null, "Thread-" + nextThreadNum(), 0); @@ -161,13 +161,13 @@ private void init(ThreadGroup g, Runnable target, String name, 当我们调用某个线程的这个方法时,这个方法会挂起调用线程,直到被调用线程结束执行,调用线程才会继续执行。 -``` +``` java public final void join() throws InterruptedException { join(0); } ``` -``` +``` java public final synchronized void join(long millis) throws InterruptedException { long base = System.currentTimeMillis(); @@ -252,7 +252,7 @@ interrupt 中文是打断的意思,意思是可以打断中止正在运行的 我们举一个例子来说明如何打断 WAITING 的线程,代码如下: -``` +``` java @Test public void testInterrupt() throws InterruptedException { Thread thread = new Thread(new Runnable() { diff --git "a/note/JDK/\346\267\261\345\205\245\350\247\243\350\257\273CompletableFuture\346\272\220\347\240\201\344\270\216\345\216\237\347\220\206.md" "b/note/JDK/\346\267\261\345\205\245\350\247\243\350\257\273CompletableFuture\346\272\220\347\240\201\344\270\216\345\216\237\347\220\206.md" index 5a43c54..84453bb 100644 --- "a/note/JDK/\346\267\261\345\205\245\350\247\243\350\257\273CompletableFuture\346\272\220\347\240\201\344\270\216\345\216\237\347\220\206.md" +++ "b/note/JDK/\346\267\261\345\205\245\350\247\243\350\257\273CompletableFuture\346\272\220\347\240\201\344\270\216\345\216\237\347\220\206.md" @@ -43,7 +43,7 @@ CompletableFuture类提供了非常多的方法供我们使用,包括了runAsy **runAsync()**,异步运行, -``` +``` java @Test public void runAsyncExample() throws Exception { ExecutorService executorService = Executors.newSingleThreadExecutor();