
Java
薛纪克
这个作者很懒,什么都没留下…
展开
-
java---线程内数据共享
Java在线程内共享数据:public class ThreadLocalTest { public static void main(String[] args){ for (int i = 0; i < 5; i++) { new Thread(new Runnable(){ public void r原创 2014-01-17 16:32:53 · 686 阅读 · 0 评论 -
Intellij idea : could not create the java virtual machine
在使用 Intellij idea 开发android的时候 出现以下错误Android Dex: [untitled3] Error: Could not create the Java Virtual Machine.Android Dex: [untitled3] Error: A fatal exception has occurred. Program will exi转载 2014-12-29 14:38:36 · 5592 阅读 · 0 评论 -
Java虚拟机-内存区域
JVM虚拟机内存区域主要包含以下几块:方法区、虚拟机栈、本地方法栈、堆、程序计数器。1. 方法区 用于存储系统加载的类、方法、常量、静态变量等数据。该区域还包含常量池。2.程序计数器 程序计数器是用于记录当前线程执行的代码行号,所以程序计数器的每个线程私有的。当程序执行Java代码时,代表着当前字节码的行号,当执行Native方法是则...原创 2018-07-29 16:46:27 · 268 阅读 · 0 评论 -
word模板引擎(一)简单使用
背景最近我手上有个基因检测项目,采集用户基因分析出相应的基因后,根据用户的基因和选择套餐出具不同的检测报告,报告输出为PDF。之前模板的编写和报告的输出都是由开发人员编写网页完成的,为了让客户能够自己编写报告,不需要我们开发人员将设计好的报告重新用网页写一遍,我想到了再word中嵌入模板引擎,直接在word中进行简单的逻辑判断。现在在市面上找到的开源库都是通过替换变量的方式实现word模板的功能...原创 2019-01-22 09:53:59 · 1068 阅读 · 0 评论 -
word模板引擎(二)方法扩展
文章目录标签或者语法的扩展1.编写函数2.注册函数3.使用函数word-tpl采用SPI的方式进行方法的扩展,同样也支持手动扩展标签或者语法的扩展该类库采用SPI的方式自动加载扩展函数,你也可以手动注册扩展函数。1.编写函数public class WordRunFunction implements WordTplFunction { @Override public ...原创 2019-01-22 09:57:07 · 527 阅读 · 0 评论 -
Netty笔记(一):启动Socket客户端&服务器
一个网络服务需要包含客户端和服务器,先采用Netty框架创建一个服务器端,并监听本地9000端口。 private final int port = 9000; private ChannelFuture channelFuture; private NioEventLoopGroup group; /** * 启动服务器 * @throws...原创 2019-05-17 09:36:56 · 1140 阅读 · 0 评论 -
Netty笔记(二)ChannelHandler和ChannelPipline
Netty所有的数据传输处理都需要在ChannelPipline中的ChannelHandler来处理,这次我们来看看Netty是怎么处理这些数据的。首先我们需要分清楚什么是出站数据,什么是入站数据。出站数据:是指你需要发送的数据,不论你是客户端还是服务器只要是写进Channel里的数据都是出站的数据。入站数据:是指你接收到的数据,不论你是客户端还是服务器,对方写进Channel里的数...原创 2019-05-17 11:30:47 · 627 阅读 · 0 评论