![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jAVA
一个只会吹比的选手
这个作者很懒,什么都没留下…
展开
-
异步任务模板
异步任务模板原创 2022-03-23 11:58:51 · 704 阅读 · 0 评论 -
JVM 方法内联 逃逸分析
编译器优化技术原创 2022-03-22 17:52:45 · 764 阅读 · 1 评论 -
根据ServerSocket实现Http的RPC
服务端:绑定端口,启动服务监听,请求是啥,响应一些啥?/** * @author x y * @description TODO * @date 2022-01-18 10:11 */public class AcceptServer { ServerSocket serverSocket; IHandlerFunction iHandlerFunction; public AcceptServer(IHandlerFunction iHandlerFunction原创 2022-03-16 14:36:23 · 384 阅读 · 0 评论 -
模拟NettyGroupEvent
以下图则是Netty模型,一个BoosGroup,一个WorkerGroup。而BoosGroup负责轮询Accept事件,并处理建立链接的Channel将其注册到WorkerGroup的selector中,并且同步处理TaskQueue队列任务。服务端代码:启动服务端/** * @author x y * @description TODO * @date 2022-03-08 9:23 */public class MainThread { public stat...原创 2022-03-16 14:29:50 · 3692 阅读 · 0 评论 -
最最最最入门的netty
package com.yw.netty;import io.netty.buffer.ByteBuf;import io.netty.buffer.PooledByteBufAllocator;import io.netty.buffer.UnpooledByteBufAllocator;import io.netty.channel.*;import io.netty.channel.nio.NioEventLoopGroup;import io.netty.channel.socket.原创 2022-03-16 14:08:37 · 604 阅读 · 0 评论 -
高效可伸缩的结果缓存
package com.yw.cache;import javax.annotation.concurrent.GuardedBy;import java.math.BigInteger;import java.util.HashMap;import java.util.Map;import java.util.concurrent.*;import java.util.concurrent.locks.ReentrantLock;/** * @author x y * @desc.原创 2022-03-16 14:06:16 · 403 阅读 · 0 评论 -
基于netty的RPC(模拟实现远程服务调用)
package rpc;import io.netty.channel.socket.nio.NioSocketChannel;import org.junit.Test;import java.io.ByteArrayOutputStream;import java.io.ObjectOutputStream;import java.io.Serializable;import java.lang.reflect.InvocationHandler;import java.lang.r.原创 2022-03-15 23:00:39 · 723 阅读 · 0 评论 -
HTTP utils
package com.yw.common.util;import com.alibaba.fastjson.JSONObject;import com.google.common.collect.Maps;import org.apache.http.HttpEntity;import org.apache.http.HttpEntityEnclosingRequest;import org.apache.http.HttpRequest;import org.apache.http.Na.原创 2022-01-17 11:11:19 · 1584 阅读 · 0 评论 -
ThreadPoolExecutor源码解释
直接上图 private final AtomicInteger ctl = new AtomicInteger(ctlOf(RUNNING, 0)); // ctl中有两个值第一个为线程个数,第二个为线程池状态 private static final int COUNT_BITS = Integer.SIZE - 3; //线程个数29位也就是2^29次方 private static final int CAPACITY = (1 <<原创 2022-01-14 17:03:30 · 153 阅读 · 0 评论 -
日期工具类
日期工具类原创 2022-01-14 09:34:56 · 203 阅读 · 0 评论 -
今日内容之SpringDataJpa
首先声明,在两个数据库中(Oracle叫做模式)存在相同的数据库表名,内容不管首先我们来看看遇到的第一个问题: spring.datasource.url作用是什么,那么指定数据库名称(oracle叫模式名)与不指定有什么区别? 首先回答第一个问题:url其作用就是用来进行数据库链接。 OK 现在回答第二个问题:第二个问题需要进行区分数据库类别,首...原创 2021-10-21 16:37:10 · 141 阅读 · 0 评论 -
聊聊JVM自动内存管理 之运行时数据区域
1.JVM运行时数据区域以下区域都拥有各自的用途,创建以及销毁的时间,有的区域会随着虚拟机启动而一直存在,有的是依赖用户线程的启动和结束而建立和销毁。2. 程序计数器程序计数器根据字面意思觉得类似于java中的++运算,其实不是。jvm虚拟机中的程序计数器是所执行字节码的行号指示器。字节码解释器就是根据这个计数器的值来取下一条需要执行的字节码质量,来控制程序的流程,分之,循环,跳转,异常处理等基础功能。切记程序计数器是线程私有的,每一条线程都有独立的程序计数器他们互不...原创 2021-10-11 17:50:47 · 77 阅读 · 0 评论 -
酒店客房管理系统JAVA-SSM-MYSQL
登录界面业务操作界面客户操作页面管理员操作页面系统开发环境本系统的开发环境主要是IntelliJ IDEA、JDK1.8、Tomcat7.0.106以及MySQL。其中IntelliJ IDEA是开发工具,所有代码的编写,测试都在此完成。JDK1.8是系统的开发以及运行环境。Tomcat7.0.106则是服务器,它主要用于系统的部署。CSS、JavaScript、Ajax用于前端页面的制作。Spring、SpringMVC、Mybatic作为三层架构与视图层持久层进行数据原创 2021-07-11 12:48:10 · 2056 阅读 · 5 评论 -
SpringBoot与Jna
JnaJna(Java Native Access)框架是一个开源的java框架,其公司SUN主导开发,是一个建立在Jni基础上的开源框架。JNA开源地址:https://jna.dev.java.net/原创 2021-06-21 14:18:59 · 2198 阅读 · 0 评论