摘要:
类加载过程概览
类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括以下7个阶段:
加载(Loading)
验证(Verification)
准备(Preparation)
解析(Resolution)
初始化(Initialization)
使用(Using)
卸载(Unl... 阅读原文
2019-09-17 07:55:07 阅读(2353) 评论(0)
摘要:
基础
TCP和UDP的区别?
TCP是面向连接的(在客户端和服务器之间传输数据之前要先建立连接),UDP是无连接的(发送数据之前不需要先建立连接)
TCP提供可靠的服务(通过TCP传输的数据。无差错,不丢失,不重复,且按序到达);UDP提供面向事务的简单的不可靠的传输。
UDP具有较好的实时性,工作效率比... 阅读原文
2019-09-17 06:49:02 阅读(2273) 评论(0)
摘要:
【文字只能描述片段信息,具体细节参考代码】
https://github.com/HCJ-shadow/SpringBootPlus
引入POM依赖
<properties>
<java.version>1.8</java.version>
... 阅读原文
2019-09-17 06:00:10 阅读(2814) 评论(0)
摘要:
最近换了笔记本,新的工作环境下jmap命令居然在报错,而jps、jstat、jinfo、jstack都能正常使用,所以初步排除进程号的问题。
Attaching to core 17536 from executable heap, please wait...
Error attaching to c... 阅读原文
2019-09-16 23:55:03 阅读(2724) 评论(0)
摘要:
前言
2018年2月16日,Apache Dubbo 加入 Apache 基金会孵化器。2019年5月16日,Apache 软件基金会董事会决议通过了 Apache Dubbo 的毕业申请,这意味着 Apache Dubbo 正式成为 Apache 的顶级项目。
配置
Dubbo 捐精给 Apache 以后... 阅读原文
2019-09-16 22:51:04 阅读(2770) 评论(0)
摘要:
在Junit单元测试中,经常需要对一些领域模型的属性赋值,以便传递给业务类测试,常见的场景如下:
com.enation.javashop.Goods goods = new com.enation.javashop.Goods();
goods.setBrandId(1);
... 阅读原文
2019-09-16 20:53:02 阅读(2558) 评论(0)
摘要:
上一篇文章主要讲了netty的read过程,本文主要分析一下write和writeAndFlush。
主要内容
本文分以下几个部分阐述一个java对象最后是如何转变成字节流,写到socket缓冲区中去的
pipeline中的标准链表结构
java对象编码过程
write:写队列
flush:刷新... 阅读原文
2019-09-16 19:16:04 阅读(2738) 评论(0)
摘要:
背景
MyBatis的历史可谓久远了,码农们也在用着各式各样的代码生成工具。然而这些工具大部分都有一个缺点,那就是只能一次性生成文件。如果我们期间在生成的文件里做了修改,再次生成时,很多工具会覆盖我们的修改。
为什么会在生成文件后进行修改呢? 因为工具只会帮我们生成通用的数据库访问方法(比如只生成基本的CUR... 阅读原文
2019-09-16 17:38:02 阅读(2334) 评论(0)
摘要:
JDBC既制定统一标准兼容了多种数据库,又利用预报告堵上了SQL注入漏洞,照理说已经很完善了,可是人算不如天算,它在性能方面不尽如人意。问题出在数据库连接的管理上,按照正常流程,每次操作完数据库,都要关闭连接,无论是代码里手工关闭,还是由try语句自动关闭。如果没有及时关闭数据库连接,就会长时间占用有限的数据... 阅读原文
2019-09-16 16:43:03 阅读(2467) 评论(0)
摘要:
线程安全性是我们在进行 Java 并发编程的时候必须要先考虑清楚的一个问题。这个类在单线程环境下是没有问题的,那么我们就能确保它在多线程并发的情况下表现出正确的行为吗?
我这个人,在没有副业之前,一心扑在工作上面,所以处理的蛮得心应手,心态也一直保持的不错;但有了副业之后,心态就变得像坐过山车一样。副业收入... 阅读原文
2019-09-16 15:19:02 阅读(2306) 评论(0)