摘要: 类加载过程概览 类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括以下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)