首页 / 技术专题CATEGORY / SPRINGFORALL

Java

在这个技术方向,积累扎实的知识与实践。

共 547 篇文章

JVM 参数:-D、-X、-XX 都有什么用?

JVM 参数众多,我们常在启动一个 Java 程序时通过命令行(例如: java -jar app.jar )指定各种参数选项。很多同学就会对此感到疑惑,为什么有时候要用 -D ,有时候却要用 -X ,还有些时候用的却是 -XX 呢? 今天,我就在这篇文章中讲一讲这些选项之间的差异。看完这篇文章之后,你将学到 JVM…

使用规则引擎Drools来消灭if-else

学习Drools,我们可以通过一个简单的案例来了解该规则引擎的使用过程。以下是一个样例工程的步骤: 首先,我们需要创建一个 Maven 工程。在 pom.xml 文件中添加 Drools 的依赖: <dependency> <groupId>org.drools</groupId> <artifactId>drools-core</artifactId>…

整理一波 Guava 的使用技巧

Guava是Google发布的一个开源库,主要提供了一些在Java开发中非常有用的工具类和API,比如字符串处理、集合操作、函数式编程、缓存等等。不管是工作还是学习都是非常值得我们去熟悉的,一起来看看吧。 字符串(Strings) Strings是Guava提供的一组字符串工具,它提供了许多有用的方法来处理字符串。以下是Strings的主要方法:…

Java并发编程入门攻略

前言 在现代软件开发中,能够充分利用多核处理器的并发编程已经变得越来越重要。Java作为一门古老而强大的语言,提供了一整套并发编程的API。在本文中,我们将一起探索Java并发编程的基础,从线程的基本概念到同步机制,再到并发集合和线程池的使用。 线程基础 什么是线程…

JVM经典垃圾收集器对比

本文带领大家了解下JVM7款经典的垃圾收集器,如图所示展示了其中作用于不同分代的收集器,如果两个收集器之间存在连线,就说明他们可以搭配使用,图中收集器所处的区域,则表示它是属于新生代收集器或者是老年代收集器。接下来逐一介绍这些收集器的目标、特性、原理和使用场景,并重点分析CMS和G1这两款相对负责而又广泛使用的收集器,深入了解他们的部分运作细节。…

缓存那些事

前言 一般而言,现在互联网应用(网站或App)的整体流程,可以概括如图1所示,用户请求从界面(浏览器或App界面)到网络转发、应用服务再到存储(数据库或文件系统),然后返回到界面呈现内容。…

Java 导出 Excel 利器:JXLS

相信大家能经常性的遇到项目上各类excel的导出,简单的excel格式,用简单的poi,easyExcel等工具都能导出。但是针对复杂的excel,有固定的样式、合并单元格、动态列等各类要求,导致excel 导出需要花很大一部分精力去写代码。jxls在很大程度上解决了以上问题。…

轻量级的Java表达式引擎:aviator

1 aviator介绍 aviator本来是一个轻量级、高性能的基于JVM的表达式引擎。不过从5.0.0版本开始,aviator升级成为了aviatorScript,成为一个高性能、轻量级寄宿于 JVM (包括 Android 平台)之上的脚本语言。 根据官网的介绍,aviator支持的主要特性:…