摘要: 和PipedInputStream和PipedOutputStream一样,Java IO包中的PipedWriter和PipedReader也提供了一种高效的线程间通信机制,允许一批(多个)线程向PipedWriter写入数据,另一批(多个)线程从PipedReader读取数据。 但是,同一批(多 阅读全文
posted @ 2026-07-21 09:57 Carey_ccl 阅读(107) 评论(0) 推荐(0)
摘要: 一、FileReader——对InputStreamReader的封装 如果说InputStreamReader是FileInputStream和FileReader之间的桥梁,那么FileReader就是对InputStreamReader的封装,从FileReader的源码来看,除了将Input 阅读全文
posted @ 2026-07-20 11:39 Carey_ccl 阅读(137) 评论(0) 推荐(1)
摘要: 一、InputStreamReader——FileInputStream和FileReader之间的桥梁 计算机存储的单位是字节,尽管我们平时在操作系统(此处以windows操作系统为例)中使用.txt文件保存了汉字这样的字符,但是对计算机而言,这些.txt文件中的汉字其实是以字节形式存在的,所以, 阅读全文
posted @ 2026-07-19 10:13 Carey_ccl 阅读(96) 评论(0) 推荐(0)
摘要: 一、BufferedReader的源码——带有缓冲区的字符流装饰器类 在计算机中,文本是最普遍、最基础的数据交换格式,从日志文件到 JSON API,从数据库查询结果到机器学习训练集,文本无处不在。然而,原始的字符输入流(如 FileReader 或 InputStreamReader)每次读取操作 阅读全文
posted @ 2026-06-30 11:48 Carey_ccl 阅读(175) 评论(0) 推荐(0)
摘要: 一、Reader.class源码 Reader 是用来读取字符流的装饰器模式中顶层的抽象类,与 InputStream(字节流)不同的是,Reader 专门处理字符char(字符char在JVM中使用Unicode编码占2个byte),主要用于读取和写入中文文本。 windows操作系统的JDK8版 阅读全文
posted @ 2026-06-29 11:45 Carey_ccl 阅读(242) 评论(0) 推荐(1)
摘要: 一、PushbackInputStream源码——可以对输入Stream进行回退的装饰器类 PushbackInputStream适合语法解析过程中的语法回退,因为这个类提供了有限字节(内部定义了一个默认长度为1的byte[] buf字节数组)的缓冲式回退能力,具体过程如下: ①、当调用unread 阅读全文
posted @ 2026-05-18 10:10 Carey_ccl 阅读(103) 评论(0) 推荐(0)
摘要: 一、ByteArrayInputStream的源码——零拷贝(Zero-Copy)的一种字节流 在传统的磁盘 I/O(比如FileInputStream.class、BufferedInputStream.class...等) 中,使用者都需要将磁盘的数据先复制到内存中来使用而无法实现零拷贝(Zer 阅读全文
posted @ 2026-05-10 23:01 Carey_ccl 阅读(145) 评论(0) 推荐(1)
摘要: 一、FileInputStream的源码分析和使用方法详细分析 FileInputStream 是 Java IO 体系中文件读取的基础类,通过封装操作系统的文件操作,提供了简单易用的字节流读取接口。其设计融合了模板方法模式(统一接口)、适配器模式(屏蔽系统差异)和代理模式(资源生命周期管理),是面 阅读全文
posted @ 2026-04-26 19:57 Carey_ccl 阅读(128) 评论(0) 推荐(0)
摘要: 在多线程编程中,线程间的数据交换是一个常见需求。Java IO包中的PipedInputStream和PipedOutputStream提供了一种高效的线程间通信机制,允许一批(多个)线程向PipedOutputStream写入数据,另一批(多个)线程从PipedInputStream读取数据。 但 阅读全文
posted @ 2026-02-19 22:07 Carey_ccl 阅读(202) 评论(1) 推荐(1)
摘要: 一、SequenceInputStream源码——可以顺序读取多个输入Stream的装饰器类 SequenceInputStream.class 的UML关系图,如下所示: SequenceInputStream.class的源码,如下所示: package java.io; import java 阅读全文
posted @ 2026-02-15 22:25 Carey_ccl 阅读(173) 评论(1) 推荐(0)
摘要: 7、InputStream的源码、FilterInputStream源码、BufferedInputStream的源码(windows操作系统,JDK8) https://img2024.cnblogs.com/blog/2485827/202602/2485827-20260206185514108-756686379.png 阅读全文
posted @ 2026-02-14 09:26 Carey_ccl 阅读(298) 评论(1) 推荐(0)
摘要: 一、DatagramChannel DatagramChannel 是一种能够发送和接收 UDP 数据包的Channel ,由于 UDP 是一种无连接的网络协议,所以默认情况下,使用者不能像对其它Channel(比如ServerSocketChannel和SocketChannel)那样直接对 Da 阅读全文
posted @ 2026-02-03 09:53 Carey_ccl 阅读(28) 评论(0) 推荐(0)
摘要: Java NIO 由以下几个核心部分组成: ①、Channels,类似于传统IO中的流(Stream); ②、Buffers; ③、Selectors 虽然Java NIO 中除此之外还有很多类和组件,但是核心还是Channel,Buffer 和 Selector ,像其它组件Pipe、FileLo 阅读全文
posted @ 2026-02-03 09:35 Carey_ccl 阅读(80) 评论(0) 推荐(0)
摘要: Spring-Boot 特点如下: ①、创建独立的 Spring 应用程序; ②、嵌入的 Tomcat,无须部署 .war 文件; ③、简化 Maven 配置; ④、自动配置 Spring; ⑤、提供生产就绪型功能,如指标、健康检查和外部配置;绝对没有代码生成,以及对XMIL没有配置要求。 1、启动 阅读全文
posted @ 2026-01-18 22:35 Carey_ccl 阅读(41) 评论(0) 推荐(0)
摘要: Java消息服务(Java Message Service,JMS)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的 API,用于在两个应用程序之间或分布式系统中发送消息,并进行异步通信。Java 消息服务是一个与具体平台无关的 API,绝大多数 MOM 提供商都对 JMS 提供支持。 阅读全文
posted @ 2026-01-17 11:54 Carey_ccl 阅读(22) 评论(0) 推荐(0)
摘要: Java远程方法调用,即JavaRMI(JavaRemote Method Invocation),是Java 编程语言里一种用于实现远程过程调用的应用程序编程接口。它使客户机上运行的程序可以调用远程服务器上的对象。远程方法调用特性使 Java 编程人员能够在网络环境中分布操作。RMI全部的宗旨就是 阅读全文
posted @ 2026-01-15 23:05 Carey_ccl 阅读(24) 评论(0) 推荐(0)
摘要: 阅读此篇博客之前,请先阅读上一篇博客的内容:Spring 源码解析12——整合SpringMVC(一) 1、DispatcherServlet 的逻辑处理 根据之前的示例,我们知道在HttpServlet.class中分别提供了相应的服务方法,它们是doDelete()、doGet()、doOpti 阅读全文
posted @ 2026-01-12 20:48 Carey_ccl 阅读(66) 评论(0) 推荐(0)
摘要: Spring 的 MVC是基于 Servlet功能实现的,通过实现 Servlet接口的 DispatcherServlet 来封装其核心功能实现,通过将请求分派给处理程序,同时带有可配置的处理程序映射、视图解析本地语言、主题解析以及上载文件支持。默认的处理程序是非常简单的Controller.in 阅读全文
posted @ 2026-01-12 09:05 Carey_ccl 阅读(18) 评论(0) 推荐(0)
摘要: MyBatis本是Apache的一个开源项目iBatis,2010年这个项目由Apache Software Foundation 迁移到了 Google Code,并且改名为 MyBatis。 MyBatis是支持普通 SQL查询、存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有 阅读全文
posted @ 2026-01-02 20:47 Carey_ccl 阅读(31) 评论(0) 推荐(0)
摘要: JDBC(Java Data Base Connectivity,Java数据库连接)是一种用于执行 SQL语句的 Java API可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为数据库开发人员提供了一个标准的 API,据此可以构建更高级的工具和接口,使数据库开 阅读全文
posted @ 2026-01-02 16:18 Carey_ccl 阅读(23) 评论(0) 推荐(0)
摘要: 示例1: 输入: 3 0 fang 90 yang 50 ning 70 输出: fang 90 ning 70 yang 50 说明: 在这个样例中,op=0,因此按成绩降序排序。 示例2: 输入: 4 1 fang 90 yang 50 ning 70 yang 70 输出: yang 50 n 阅读全文
posted @ 2026-07-02 10:41 Carey_ccl 阅读(7) 评论(0) 推荐(0)
摘要: 示例一 输入: 255.255.255.0 192.168.224.256 192.168.10.4 255.0.0.0 193.194.202.15 232.43.7.59 255.255.255.0 192.168.0.254 192.168.0.1 输出: 1 2 0 说明: 对于第一个例子: 阅读全文
posted @ 2026-07-01 18:12 Carey_ccl 阅读(10) 评论(0) 推荐(0)
摘要: 答案如下: package everydayPractice.hash.HJ25; import java.util.*; /** * Created by chelong on 2026/7/1 */ public class AnswerMA { public static void main( 阅读全文
posted @ 2026-07-01 16:40 Carey_ccl 阅读(10) 评论(0) 推荐(0)
摘要: 示例1 输入: 10.70.44.68~1.1.1.5 1.0.0.1~255.0.0.0 192.168.0.2~255.255.255.0 19..0.~255.255.255.0 输出:1 0 1 0 0 2 1 说明:在这个样例中: 第一条地址信息:掩码非法; 第二条地址信息:IP 格式和掩 阅读全文
posted @ 2026-06-30 18:50 Carey_ccl 阅读(17) 评论(0) 推荐(0)
摘要: 示例1 输入: 5 5 0 1 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 1 0 输出: (0,0) (1,0) (2,0) (2,1) (2,2) (2,3) (2,4) (3,4) (4,4) 示例2 输入: 5 5 0 1 0 0 0 0 1 0 1 阅读全文
posted @ 2026-06-30 12:04 Carey_ccl 阅读(7) 评论(0) 推荐(0)