- 2019-12-18
JFinal 4.8 发布,迭代 9 年依然极简、极速
从 2010 年 12 月 18 日第一个初始版本,到 2012 年 3 月 18 日在 oschina 开源,到今天 2019 年 12 月 18 日,JFinal 已迭代 9 年。 任何系统都有向复杂、混乱方向演化的倾向,本质是由于简洁、有序的结构只拥有极小的概率分 阅读全文>> - 2019-12-16
学Maven,这篇万余字的教程,真的够用了!
1 Maven 介绍 1.1 为什么使用 Maven 由于 Java 的生态非常丰富,无论你想实现什么功能,都能找到对应的工具类,这些工具类都是以 jar 包的形式出现的,例如 Spring,SpringMVC、MyBatis、数据库驱动,等等,都是以 jar 包的形式出现的,jar 阅读全文>> - 2019-12-16
JWT攻击手册:如何入侵你的Token
JSON Web Token(JWT)对于渗透测试人员而言,可能是一个非常吸引人的攻击途径。因为它不仅可以让你伪造任意用户获得无限的访问权限,而且还可能进一步发现更多的安全漏洞,如信息泄露,越权访问,SQLi,XSS,SSRF,RCE,LFI等。首先我们需要识别应用程序正在使用JWT, 阅读全文>> - 2019-12-16
告别编码5分钟,命名2小时!史上最全的Java命名规范参考!
简洁清爽的代码风格应该是大多数工程师所期待的。在工作中笔者常常因为起名字而纠结,夸张点可以说是编程5分钟,命名两小时!究竟为什么命名成为了工作中的拦路虎。 每个公司都有不同的标准,目的是为了保持统一,减少沟通成本,提升团队研发效能。所以本文中是笔者结合阿里巴巴开发规范,以及工作中的见闻 阅读全文>> - 2019-12-04
Stack Overflow 上 370万浏览量的一个问题:如何比较 Java 的字符串?
在逛 Stack Overflow 的时候,发现了一些访问量像喜马拉雅山一样高的问题,比如说这个:如何比较 Java 的字符串?访问量足足有 370万+,这不得了啊!说明有很多很多的程序员被这个问题困扰过。 PS:系列文章回顾:《Stack Overflow 上250万浏览量的一个问题 阅读全文>> - 2019-12-03
Java 大黑话讲解设计模式 -- UML类图
目录 1、啥是UML类图? 2、UML类图有啥用? 3、正式理解UML类图 4、使用idea画第一个UML类图 5、类之间的关系图【必须牢记】 6、类之间的关系 6.1、依赖 6.2、泛化 6.3、实现 6.4、关联 6.5、聚合 6.6、组合 7、简单总结类之间的六种关系 前 阅读全文>> - 2019-12-03
Java异常处理只有Try-Catch吗?
今天,我们将讨论一个非常重要的主题-Java 中的异常处理。尽管有时可能会对此主题进行过多的讨论,但并非每篇文章都包含有用且相关的信息。 Java 中最常见的异常处理机制通常与 try-catch 块关联 。我们使用它来捕获异常,然后提供在发生异常的情况下可以执行的逻辑。 的确,你不需 阅读全文>> - 2019-12-03
关于HashMap容量的初始化,还有这么多学问。
文中我们提到,默认情况下HashMap的容量是16,但是,如果用户通过构造函数指定了一个数字作为容量,那么Hash会选择大于该数字的第一个2的幂作为容量。(3->4、7->8、9->16) 本文,延续上一篇文章,我们再来深入学习下,到底应不应该设置HashMap的默认 阅读全文>> - 2019-11-29
Java类的定义与类的实例化
目录 Java类的定义与类的实例化 创建对象及使用对象: 创建对象的过程在内存中的表现 定义一个简单的类 定义一个成员变量 定义一个方法 定义一个构造器 类的定义 类的实例化 Java类的定义与类的实例化 类的定义 面向对象的程序设计中,类可以看作是我们自定义的数据类型,那么 阅读全文>> - 2019-11-28
深入理解Java static关键字
在开始讲static之前,我想让各位看一段有意思的代码: public class Test { static{ System.out.println("test static 1"); } static{ 阅读全文>> - 2019-11-28
Java 又双叒叕发布新版本,这么多版本如何灵活管理?
前言 不知不觉 JDK13 发布已有两个月,不知道各位有没有下载学习体验一番?每次下载安装之后,需要重新配置一下 Java 环境变量。等到运行平时的项目又需要切回之前 JDK 版本,这又需要重新环境变量。这么重复配置显然非常低效,又不能灵活切换版本。 所幸通过万能 Google 找到解 阅读全文>> - 2019-11-26
Lombok 使用详解,简化Java编程
前言 在 Java 应用程序中存在许多重复相似的、生成之后几乎不对其做更改的代码,但是我们还不得不花费很多精力编写它们来满足 Java 的编译需求 比如,在 Java 应用程序开发中,我们几乎要为所有 Bean 的成员变量添加 get() ,set() 等方法,这些相对固定但又不得不编 阅读全文>> - 2019-11-26
Java开发中常用jar包整理及使用
本文整理了我自己在Java开发中常用的jar包以及常用的API记录。 <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 --> <dependency&g 阅读全文>> - 2019-11-26
Java并发之volatile关键字
引言 说到多线程,我觉得我们最重要的是要理解一个临界区概念。 举个例子,一个班上1个女孩子(临界区),49个男孩子(线程),男孩子的目标就是这一个女孩子,就是会有竞争关系(线程安全问题)。推广到实际场景,例如对一个数相加或者相减等等情形,因为操作对象就只有一个,在多线程环境下,就会产 阅读全文>> - 2019-11-26
Java——内部类详解
说起内部类,大家肯定感觉熟悉又陌生,因为一定在很多框架源码中有看到别人使用过,但又感觉自己使用的比较少,今天我就带你具体来看看内部类。 内部类基础 所谓内部类就是在类的内部继续定义其他内部结构类。 在 Java 中,广泛意义上的内部类一般来说包括这四种:成员内部类、局部内部类、匿名内部 阅读全文>>