目录NIO类库简介NIO服务端序列图 服务端代码示例:NIO客户端序列图客户端代码示例:  我们首先需要澄清一个概念:NIO到底是什么的简称?有人称之为New I/O,因为它相对于之前的I/O类库是新增的,所以被称为New I/O,这是它的官方叫法。但是,由于之前老的I
转载 2018-10-30 13:34:00
62阅读
Buffer用于和NIO通道进行交互。数据是从通道读入缓冲区,从缓冲区写入到通道中的。以写为例,应用程序都是将数据写入缓冲,再通过通道把缓冲的数据发送出去,读也是一样,数据总是先从通道读到缓冲,应用程序再读缓冲的数据。 缓冲区本质上是一块可以写入数据,然后可以从中读取数据的内存( 其实就是数组)。这
原创
Soy
2021-08-10 17:22:00
90阅读
什么是NIO? NIO 库是在 JDK 1.4 中引入的。NIO 弥补了原来的 I/O 的不足,它在标准 Java 代码中提供了高速的、面向块的 I/O。NIO翻译成 no-blocking io 或者 new io都说得通。 和BIO的主要区别 Java NIO和IO之间第一个最大的区别是,IO是
原创
Soy
2021-08-10 17:22:03
130阅读
服务端提供IP和监听端口,客户端通过连接操作想服务端监听的地址发起连接请求,通过三次握手连接,如果连接成功建立,双方就可以通过套接字进行通信。 传统的同步阻塞模型开发中,ServerSocket负责绑定IP地址,启动监听端口;Socket负责发起连接操作。连接成功后,双方通过输入和输出流进行同步阻塞
原创
Soy
2021-08-10 17:22:07
120阅读
编写程序是一项系统而繁琐的工作,它不仅需要程序设计人员具有一定的功底,更需要有良好的编程习惯和风格。良好的编程习惯和风格不仅可以使程序代码更易于读懂和修改,更重要的是,它可以使程序的结构更加合理,有助于提高程序的执行效率。下面是我在程序设计中总结的一些经验,供大家参考。     设计顺序   &nbsp
转载 2023-08-29 06:47:02
33阅读
在兼顾面向对象特性的基础上,Java语言通过Lambda表达式与方法引用等,为开发者打开了函数式编程的大门。 下面我们做一个初探。2.1 Lambda的延迟执行有些场景的代码执行后,结果不一定会被使用,从而造成性能浪费。而Lambda表达式是延迟执行的,这正好可以 作为解决方案,提升性能。性能浪费的日志案例注:日志可以帮助我们快速的定位问题,记录程序运行过程中的情况,以便项目的监控和优化...
原创 2022-03-04 18:05:59
108阅读
在兼顾面向对象特性的基础上,Java语言通过Lambda表达式与方法引用等,为开发者打开了函数式编程的大门。 下面我们做一个初探。2.1 Lambda的延迟执行有些场景的代码执行后,结果不一定会被使用,从而造成性能浪费。而Lambda表达式是延迟执行的,这正好可以 作为解决方案,提升性能。性能浪费的日志案例注:日志可以帮助我们快速的定位问题,记录程序运行过程中的情况,以便项目的监控和优化...
第一章 网络编程入门1.1软件结构C/S结构 :全称为Client/Server结构,是指客户端和服务器结构。常见程序有QQ、迅雷等软件。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-I4W8REjW-1575344968236)(img/1_cs.jpg)]B/S结构 :全称为Browser/Server结构,是指浏览器和服务器结构
第一章 网络编程入门1.1软件结构C/S结构 :全称为Client/Server结构,是指客户端和服务器结构。常见程序有QQ、迅雷等软件。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-I4W8REjW-1575344968236)(img/1_cs.jpg)]B/S结构 :全称为Browser/Server结构,是指浏览器和服务器结构。常见浏览器有谷歌、...
原创 2022-03-04 18:32:49
42阅读
流式编程是1.8中的新特性,基于常用的四种函数式接口以及Lambda表达式对集合类数据进行类似流水线一般的操作流式编程分为大概三个步骤:获取流 → 操作流 → 返回操作结果流的获取方式这里先了解获取流的常用的两种方式,后面在进行流的操作集合中获取流众所周知Java中所有的集合都是Collection下的实现类,在Collection接口中就提供了获取流的方法:public class Applic
一段Servlet的源程序,...
转载 2014-07-30 16:29:00
66阅读
2评论
JDK、JRE、JVM、卸载JDK、安装JDK 、Java程序运行机制
原创 2024-09-30 14:47:39
86阅读
实验环境  只有两台机子,一台虚拟机192.168.1.200,另外一台物理机192.168.1.201。 目标 执行一个shell脚本,给这两台机子自动安装jdk。   实验步骤 1.自动设置ssh免密码登录 执行脚本之后,遍历服务器ip,对每一个服务进行如下操作 2.每台服务
第三章 综合案例3.1 文件上传案例文件上传分析图解【客户端】输入流,从硬盘读取文件数据到程序中。【客户端】输出流,写出文件数据到服务端。【服务端】输入流,读取文件数据到服务端程序。【服务端】输出流,写出文件数据到服务器硬盘中。基本实现服务端实现:public class FileUpload_Server { public static void main(Str...
第三章 综合案例3.1 文件上传案例文件上传分析图解【客户端】输入流,从硬盘读取文件数据到程序中。【客户端】输出流,写出文件数据到服务端。【服务端】输入流,读取文件数据到服务端程序。【服务端】输出流,写出文件数据到服务器硬盘中。基本实现服务端实现:public class FileUpload_Server { public static void main(Str...
JDK5新版RMI编程指南前言我前一段时间需要为我的一个Java程序提供远程访问接口,供其他Java程序使用。Java程序可以使用很多种远程访问技术实现这一需求。由于我的远程客户端是java程序,因此,我决定使用RMI这种远程访问技术。RMI是java平台上最快的远程访问技术。Spring框架为包括RMI在内的各种远程访问技术提供了很好的工具类,能够使我们方便的公布RMI接口和访问RMI远程对象。但是,我的那个Java程序并没有使用Spring框架。因此,我研究了怎样在一般的java程序中使用RMI技术。我寻找了一些RMI资料。根据那些RMI资料,构建一个RMI服务器需要写大量的代码。这太离.
转载 2007-08-02 13:40:00
93阅读
2评论
3.1 程序开发步骤说明开发环境已经搭建完毕,可以开发我们第一个Java程序了。Java程序开发三步骤:编写、编译、运行。3.2 编写Java源程序在 d:\day01 目录下新建文本文件,完整的文件名修改为 HelloWorld.java ,其中文件名为 HelloWorld ,后 缀名必须为 .java 。 2. 用记事本打开使用notepad++记事本软件。在文件中键...
原创 2022-03-05 09:41:09
111阅读
3.1 程序开发步骤说明开发环境已经搭建完毕,可以开发我们第一个Java程序了。Java程序开发三步骤:编写、编译、运行。3.2 编写Java源程序在 d:\day01 目录下新建文本文件,完整的文件名修改为 HelloWorld.java ,其中文件名为 HelloWorld ,后 缀名必须为 .java 。 2. 用记事本打开使用notepad++记事本软件。在文件中键...
第二章 TCP通信程序2.1 概述TCP通信能实现两台计算机之间的数据交互,通信的两端,要严格区分为客户端(Client)与服务端(Server)。两端通信时步骤:服务端程序,需要事先启动,等待客户端的连接。客户端主动连接服务器端,连接成功才能通信。服务端不可以主动连接客户端。在Java中,提供了两个类用于实现TCP通信程序:客户端:java.net.Socket 类表示。创建...
前言通过我之前的文章《JVM堆内存模型概括》、《java垃圾回收机制概括》、《JVM怎样判断是垃圾对象进行垃圾回收》
原创 2022-05-10 14:44:27
788阅读
  • 1
  • 2
  • 3
  • 4
  • 5