java核心技术

java核心技术包括java基础、java面向对象(封装,继承,多态)、IO操作、并发编程、网络编程等
文章

Java 文档注释

2019-03-28
Java 文档注释 Java只是三种注释方式。前两种分别是// 和/* */,第三种被称作说明注释,它以/** 开始,以 */结束。 说明注释允许你在程序中嵌入关于程序的信息。你可以使用java...

Java Applet基础

2019-03-28
Java Applet基础 applet是一种Java程序。它一般运行在支持Java的Web浏览器内。因为它有完整的Java API支持,所以applet是一个全功能的Java应用程序。 如下所示...

Java 多线程编程

2019-03-28
Java 多线程编程 Java给多线程编程提供了内置的支持。一个多线程程序包含两个或多个能并发运行的部分。程序的每一部分都称作一个线程,并且每个线程定义了一个独立的执行路径。 多线程是多任务的一...

Java 发送邮件

2019-03-28
Java 发送邮件 使用Java应用程序发送E-mail十分简单,但是首先你应该在你的机器上安装JavaMail API 和Java Activation Framework (JAF) 。 你...

Java 网络编程

2019-03-28
Java 网络编程 网络编程是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来。 java.net包中J2SE的API包含有类和接口,它们提供低层次的通信细节。你可以直接使用这些类...

Java序列化

2019-03-28
Java序列化 Java 提供了一种对象序列化的机制,该机制中,一个对象可以被表示为一个字节序列,该字节序列包括该对象的数据、有关对象的类型的信息和存储在对象中数据的类型。 将序列化对象写入文件...

Java 泛型

2019-03-28
Java 泛型 如果我们只写一个排序方法,就能够对整形数组、字符串数组甚至支持排序的任何类型的数组进行排序,这该多好啊。 Java泛型方法和泛型类支持程序员使用一个方法指定一组相关方法,或者使用...

Java 集合框架

2019-03-28
Java 集合框架 早在Java 2中之前,Java就提供了特设类。比如:Dictionary, Vector, Stack, 和Properties这些类用来存储和操作对象组。 虽然这些类都非...

Java 数据结构

2019-03-28
Java 数据结构 Java工具包提供了强大的数据结构。在Java中的数据结构主要包括以下几种接口和类: 枚举(Enumeration) 位集合(BitSet) 向量(Vector)...

Java 包(package)

2019-03-28
Java 包(package) 为了更好地组织类,Java提供了包机制,用于区别类名的命名空间。 包的作用 1 把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用。 2 如同...

Java 接口

2019-03-28
Java 接口 接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法...

java 封装

2019-03-28
java 封装 在面向对象程式设计方法中,封装(英语:Encapsulation)是指,一种将抽象性函式接口的实作细节部份包装、隐藏起来的方法。 封装可以被认为是一个保护屏障,防止该类的代...

Java 抽象类

2019-03-28
Java 抽象类 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。 ...

Java 多态

2019-03-28
Java 多态 多态是同一个行为具有多个不同表现形式或形态的能力。 多态性是对象多种表现形式的体现。 比如我们说"宠物"这个对象,它就有很多不同的表达或实现,比如有小猫、小狗、蜥蜴等等。那...

Java 重写(Override)与重载(Overload)

2019-03-28
Java 重写(Override)与重载(Overload) 重写(Override) 重写是子类对父类的允许访问的方法的实现过程进行重新编写!返回值和形参都不能改变。即外壳不变,核心重...

Java 继承

2019-03-28
Java 继承 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类。继承可以理解为一个对象从另一个对象获取属性的过程。 如果类A是类B的父类,而类B是类C的父类,我们也称C是...

Java 异常处理

2019-03-28
Java 异常处理 异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的。 比如说,你的代码少了一个分号,那么运行出来结果是提示是错误java.lang.Error;如...

java.lang.OutOfMemoryError: Java heap space 的解决方案

2019-03-28
lucene重建索引的时候,出现java.lang.OutOfMemoryError: Java heap space的异常,原因应该是查询的数据太多了,造成内存溢出,我用的是vps,装的是linxu操...

Java 流(Stream)、文件(File)和IO

2019-03-28
Java 流(Stream)、文件(File)和IO Java.io包几乎包含了所有操作输入、输出需要的类。所有这些流类代表了输入源和输出目标。 Java.io包中的流支持很多种格式,比如:基本...

Java 方法

2019-03-28
Java 方法 在前面几个章节中我们经常使用到System.out.println(),那么它是什么呢? println()是一个方法(Method),而System是系统类(Class),ou...
专题教程

java教程

java在线教程汇集业界最好的java教程资料,提供最好的学习Java资源,是国内一流的java资料平台

Disruptor教程

Disruptor它是一个开源的并发框架,并获得2011 Duke’s 程序框架创新奖,能够在无锁的情况下实现网络的Queue并发操作。

Spring Cloud教程

Spring Cloud是用于构建健壮的云应用程序的框架。 该框架通过为移动到分布式环境时面临的许多常见问题提供解决方案来促进应用程序的开发。使用微服务架构运行的应用程序旨在简化开发,部署和维护。 应用程序的分解特性允许开发人员一次关注一个问题。 可以在不影响系统其他部分的情况下引入改进。本教程介绍了Spring Cloud的基础知识,包含讨论Spring Cloud的所有基本组件以及示例。

Tika教程

Apache Tika用于文件类型检测和从各种格式的文件内容提取的库。在内部,Tika使用现有的各种文件解析器和文档类型的检测技术来检测和提取数据。使用Tika,人们可以开发出通用型检测器和内容提取到的不同类型的文件,如电子表格,文本文件,图像,PDF文件甚至多媒体输入格式,在一定程度上提取结构化文本以及元数据。Tika提供用于解析不同文件格式的一个通用API。它采用83个现有的专业解析器库,为每个文档类型

Spring Batch教程

Spring Batch是一个轻量级框架,用于在开发企业应用程序中批处理应用程序。 本教程解释了Spring Batch的基本概念,并展示了如何在实际环境中使用它。

Spring MVC教程

Spring MVC框架是一个开源的Java平台,为开发强大的基于Java的Web应用程序提供全面的基础架构支持非常容易和非常快速。Spring框架最初由Rod Johnson撰写,并于2003年6月根据Apache 2.0许可证首次发布。

httpclient 教程

HttpClient 是 Apache Jakarta Common 下的子项目,用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。HttpClient 已经应用在很多的项目中,比如 Apache Jakarta 上很著名的另外两个开源项目 Cactus 和 HTMLUnit 都使用了 HttpClient。

Netty教程

Netty是一个java开源框架。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。Netty是一个NIO客户端、服务端框架。允许快速简单的开发网络应用程序。例如:服务端和客户端之间的协议。它最牛逼的地方在于简化了网络编程规范。例如:TCP和UDP的Socket服务。

微服务架构

微服务架构(Microservice Architecture)是一种架构概念,旨在通过将功能分解到各个离散的服务中以实现对解决方案的解耦。

java通用工具类与解决方案

java通用工具类与解决方案包括通用返回对象、分页返回对象、id生成器、异常拦截处理等

Java并发编程

Java并发编程是基于java语言的并发编程实践,JUC、锁、future等相关知识点

Java网络编程

Java加密与解密

Java加密与解密主要分析了常用的加密与解密算法,包括摘要算法、对称加密算法、非对称加密算法、数字签名等。

数据结构与算法

数据结构分类:线性结构(数组、栈、队列、链表、哈希表......);树结构(二叉树、二分搜索树、AVL、红黑树、Treap、Splay、堆、Trie、线段树、K-D树、并查集、哈夫曼树......);​图结构(邻接矩阵、邻接表)

深入理解JVM

从jvm规范、Class文件格式与字节码、类加载、内存分配、垃圾收集、性能监控与故障分析等方面深入理解JVM

JPA教程

Java持久性API(简称JAP)是类和方法的集合,以海量数据关系映射持久并存储到数据库,这是由Oracle公司提供方案技术。

OAuth 2.0教程

OAuth 2.0是一个应用之间彼此访问数据的开源授权协议。比如,一个游戏应用可以访问Facebook的用户数据或者一个基于地理的应用可以访问Foursquare的用户数据等。

activiti工作流教程

Activiti5是由Alfresco软件在2010年5月17日发布的业务流程管理(BPM)框架,它是覆盖了业务流程管理、工作流、服务协作等领域的一个开源的、灵活的、易扩展的可执行流程语言框架。Activiti基于Apache许可的开源BPM平台,创始人Tom Baeyens是JBoss jBPM的项目架构师,它特色是提供了eclipse插件,开发人员可以通过插件直接绘画出业务流程图。

Quartz教程

Quartz是一个开源的作业调度框架,可以让计划的程序任务一个预定义的日期和时间运行。Quartz可以用来创建简单或复杂的日程安排执行几十,几百,甚至是十万的作业数。

Guava教程

Guava是一种基于开源的Java库,其中包含谷歌正在由他们很多项目使用的很多核心库。这个库是为了方便编码,并减少编码错误。这个库提供用于集合,缓存,支持原语,并发性,常见注解,字符串处理,I/O和验证的实用方法

Kotlin教程

Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,被称之为 Android 世界的Swift,由 JetBrains 设计开发并开源。

Apache Commons教程

Apache Commons Collections是Apache Commons的组件,它们是从Java API派生而来的,并为Java语言提供了组件体系结构

WebSocket教程

WebSocket 规范的目标是在浏览器中实现和服务器端双向通信.双向通信可以拓展浏览器上的应用类型,例如实时的数据推送(股票行情),游戏,聊天/im 等.本教程通过java简单的示例带你快速学会WebSocket编程

POI教程

Apache POI是一种流行的API,它允许程序员使用Java程序创建,修改和显示MS Office文件。这由Apache软件基金会开发使用Java分布式设计或修改Microsoft Office文件的开源库。它包含类和方法对用户输入数据或文件到MS Office文档进行解码。

HTTP教程

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。

TCP/IP教程

TCP/IP 是因特网的通信协议。TCP/IP 通信协议是对计算机必须遵守的规则的描述,只有遵守这些规则,计算机之间才能进行通信。

YAML教程

YAML是“YAML Is not markup language”的缩写形式,是一种数据序列化语言,设计为人性化的,并且适用于其他编程语言的日常任务。

Web Services教程

Web service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。

JFinal教程

JFinal 是基于 Java 语言的极速 WEB + ORM 开发框架,其核心设计目标是开发迅速、代 码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有 Java语言所有优势的同时 再拥有 ruby、python、php 等动态语言的开发效率!

jsp&servlet教程

JSP全称Java Server Pages,是一种动态网页开发技术。它使用JSP标签在HTML网页中插入Java代码。标签通常以<%开头以%>结束。JSP是一种Java servlet,主要用于实现Java web应用程序的用户界面部分。网页开发者们通过结合HTML代码、XHTML代码、XML元素以及嵌入JSP操作和命令来编写JSP。

jstl el 教程

JSTL指的是JavaServer Pages标准标记库,是封装了许多JSP应用程序通用的核心功能的JSP标签的集合,包括核心标签(Core Tags),格式化标签(Formatting tags),SQL标签(SQL tags),XML标签(XML tags),JSTL函数(JSTL Functions)

JSoup教程

JSoup是一个用于处理HTML的Java库,它提供了一个非常方便类似于使用DOM,CSS和jquery的方法的API来提取和操作数据。jsoup实现WHATWG HTML5规范,并将HTML解析为与现代浏览器相同的DOM。

JSON教程

JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。本专题详细讲解json、jackson、fastjson等工具包的操作教程

tomcat教程

Tomcat架构解析 基于Tomcat 8.5.x全面介绍了Tomcat的架构、各组件的实现方案以及使用方式,主要包括Tomcat的基础组件架构以及工作原理,Tomcat各组件的实现方案、使用方式以及详细配置说明,Tomcat与Web服务器集成以及性能优化,Tomcat部分扩展特性介绍等。读者可以了解应用服务器的架构以及工作原理,学习Tomcat的使用、优化以及详细配置。

JFreeChart教程

JfreeChart是用Java开发的开源库,它可以在基于Java的应用程序可用于创建各种各样的图表。通过使用JFreeChart,可以创建2D和3D图表,如饼图,条形图,折线图,XY图和3D图表所有常用的主要类型。

XStream教程

XStream是一个简单的基于Java库,Java对象序列化到XML,反之亦然(即:可以轻易的将Java对象和xml文档相互转换)

Thymeleaf教程

Thymeleaf是一种用于Web和独立环境的现代服务器端的Java模板引擎。Thymeleaf的主要目标是将优雅的自然模板带到开发工作流程中,并将HTML在浏览器中正确显示,并且可以作为静态原型,让开发团队能更容易地协作。Thymeleaf能够处理HTML,XML,JavaScript,CSS甚至纯文本

Groovy教程

Groovy是一种基于Java平台的面向对象语言。 Groovy 1.0于2007年1月2日发布,其中Groovy 2.4是当前的主要版本。 Groovy通过Apache License v 2.0发布。

Log4j教程

Log4j是Apache的一个开源项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIX Syslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。最令人感兴趣的就是,这些可以通过一个配置文件来灵活地进行配置,而不需要修改应用的代码。

JasperReports教程

Jasper Report 是一个开源的Java报表引擎,它不像其他的报表工具,例如Crystal报表是基于Java的,没有自己的表达式语法。JasperReports有提供丰富的内容到屏幕上,到打印机,或转换成PDF,HTML,XLS,RTF,ODT,CSV,TXT和XML文件的能力。因为它不是一个独立的工具,它不能被安装在其自身。相反,它是由包括它在应用程序的CLASSPATH库嵌入到Java应用程序。

正则表达式

正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符")。使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。

i18n 国际化

国际化(internationalization)又称为 i18n(读法为i 18 n,据说是因为internationalization(国际化)这个单词从i到n之间有18个英文字母,i18n的名字由此而来)

JSF教程

JSF(JavaServer Faces)它是一个基于服务器端组件的用户界面框架。 它用于开发Web应用程序。 它提供了一个定义良好的编程模型,由丰富的API和标签库组成。最新版本JSF 2使用Facelets作为其默认模板系统。 它是用Java编写的。

设计模式

设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。

JAVA GUI教程

Swing API 是一组可扩展的 GUI 组件,用来创建基于 JAVA 的前端/ GUI 应用程序。它是建立在 AWT API 之上,并且作为 AWT API 的替代者,因为它的几乎每一个控件都对应 AWT 控件。 Swing 组件遵循模型 - 视图 - 控制器架构来满足下面的准则。

JOGL教程

Java支持OpenGL(JOGL)是近期在Java OpenGL图形API结合。它是一个包装库,它可以访问OpenGL API,并且它被设计来创建Java编码的2D和3D图形应用程序。 JOGL是前麻省理工学院的研究生肯·拉塞尔和克里斯·克莱恩最初开发的一个开源库。后来发布到Sun Microsystems,现在它是Java图形和音频处理(JOGAMP)。用于各种操作系统,如Windows,Solaris和Mac OS X和Linux(基于x86)JOGL功能。

PDFBox教程

Apache PDFBox是一个开源的Java库,支持PDF文档的开发和转换。