Java IO 7.BufferedInput/OutputStream 目录1. 介绍2. 构造方法3. 示例代码1. 介绍BufferedInputStream:为另一个输入流添加了缓冲输入和支持mark和reset方法的功能当创建BufferedInputStream时,将创建一个内部缓冲区数组。 当从流中读取或跳过字节时,内部缓冲区将根据需要从所包含的输入流中重新填充,一次有多个字节 mark操作会记住输入流中的一点,并且reset操作会导致从最近的mark操作之后读取的所有字节在从包含的输入流中取出新的字节之前重新读取 缓存流...
Servlet注册(web.xml、Annotation) 目录1. 在web.xml中部署servlet2. 通过Annotation(注解)部署 web.xml中metadata-complete属性 @WebServlet:Servlet配置 @WebFilter:过滤器配置1. 在web.xml中部署servlet<servlet> <!-- servlet的内部名称,自定义 --> <servlet-name>Dem...
Java IO 6. FileInputStream/OutputStream 目录1. 介绍2. 构造方法 FileInputStreamFileOutputStream3. 实例代码文本读取 文件复制1. 介绍FileInputStream和FileOutputStream分别是InputStream和OutputStream的直接子类,是主要负责完成对本地磁盘文件的顺序输入与输出操作的流FileInputStream类的对象表示一个文件字节输入流,从中可读取一...
Java IO 5. Input/OutputStream 1. InputStream流类 常用方法 功能说明 public int read() 从输入流的当前位置读入一个字节的二进制数据,然后以此数据为低位字节,配上8个全0的高位字节合成一个16位的整型量返回,若输入流的当前位置不含数据则返回-1 public int read(byte[] b) 从输入流当前位置连续读入多个字节保存在数组b中,同时返回读取的..
Java IO 4. BufferedReader/Writer 1. 介绍 缓冲输入输出流,通过设置缓冲区实现字符流的快速读取和写入2. 构造方法(Writer类似) public BuffereReader(Reader in) 创建缓冲区字符输入流 public BuffereReader(Reader in,int size) 创建并设置缓冲区大小 3. 其他 BufferedReader:为另一个输入流添加了缓冲输入和支持mark和reset方法的...
Java IO 3. FileWriter 目录1. 介绍2.FileWriter类构造方法3. FileReader与FileWriter的缺陷4. 示例代码1. 介绍文件字符输出流类FileWriter继承自OutputStreamWriter类,而OutputStreamWriter类又继承自Writer类,因此Writer类与OutputStreamWriter类所提供的方法均可供FileWriter类所创建的对象使用。2.FileWriter类构造方法 public File...
Java IO 2. 使用FileReader读取文件 目录1. 字节流介绍2. Reader类常用方法3. FileReader类4. 实例代码 read()方法 read(char[] cbuf, int start, int len)方法1. 字节流介绍Reader和Write类可用来处理字符串的读取和写入的操作,但Reader和Writer均是抽象类,所以并不能直接使用这两个类,而需要使用它们的子类来创建对象,再利用对象来处理读写操作。2. Reader类常用方法 ...
Java IO 1. 概述 目录1.流(Stream)2. 输入输出流类库 3. 类结构简图1.流(Stream)流是指计算机各部件之间的数据流动。按照数据的传输方向,流可分为输入流和输出流;按照流的内容,可以分为字节流和字符流。1)输入输出流2)缓冲流(bufferedstream):使用缓冲流为了提高数据的传输效率,即为一个流配有一个缓冲区(buffer),这个缓冲区就是专门用于传送数据的一块内存2. 输入输出流类库java语言的流类都封装在java.io...
Servlet设置实现下载文件 实现网页下载文件的Servlet类实现import javax.servlet.ServletException;import javax.servlet.ServletOutputStream;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java...
Java多线程7. 线程通信 目录1. Object类中用于线程通信的常用方法2. 说明:3. 实例代码1. Object类中用于线程通信的常用方法 public fianl wait() 如果一个正在执行同步代码的线程执行了wait()方法,该线程会暂停执行并进入对象x的等待队列,释放x的互斥锁。直到其他线程在对象x上调用notify()或notifyAll()方法,才能重新获得对象x的互斥锁并继续执行(Causes the current thread to ...
Java多线程6. 线程的同步 1. 线程同步介绍在并发程序设计中,对多线程共享的资源或数据称为临界资源或同步资源,而把每个线程中访问临界资源的那一段代码称为临界代码或临界区。临界区必须互斥地使用,为了使临界代码对临界资源的访问成为一个不可被中断的原子操作,Java技术利用对象“互斥锁”机制来实现线程间的互斥操作。2. 互斥锁机制在Java中每个对象都有一个“互斥锁”与之相连。当线程A获得了一个对象的互斥锁后,线程B若也想获得该对象的互斥锁,就必须等待线程A完成规定的操作并释放出互斥锁后才能获得并执行相关的...
Java多线程6. 线程的同步 1. 线程同步介绍在并发程序设计中,对多线程共享的资源或数据称为临界资源或同步资源,而把每个线程中访问临界资源的那一段代码称为临界代码或临界区。临界区必须互斥地使用,为了使临界代码对临界资源的访问成为一个不可被中断的原子操作,Java技术利用对象“互斥锁”机制来实现线程间的互斥操作。2. 互斥锁机制在Java中每个对象都有一个“互斥锁”与之相连。当线程A获得了一个对象的互斥锁后,线程B若也想获得该对象的互斥锁,就必须等待线程A完成规定的操作并释放出互斥锁后才能获得并执行相关的...
IDEA配置Maven module卡住解决记录 前言:在使用IDEA配置Maven module时IDEA卡死,无法配置解决记录:更改maven的setting.xml中的仓库配置,我这里添加的是Google仓库(应该也可以用其他仓库)<mirror> <id>google-maven-central</id> <name>Google Maven Central</name> <url>https://maven-central.stora.
Tomcat 8080 端口被占用解决方案 目录1. 设置及报错记录初始配置报错记录2. 解决记录1. 设置及报错记录初始配置报错记录2. 解决记录更改新配置服务器HTTP端口号 Tomcat自身webapps目录下Root文件夹设置的默认访问路径为localhost:8080;在IDEA中配置服务器时需要更改端口号;将其更改为8081成功运行...
Java多线程5. 线程间的数据共享 目录1. 介绍2. 通过继承Thread类的线程对象实例代码3. 利用Runnable接口创建的线程对象实例代码1. 介绍同一进程的多个线程间可以共享相同的内存单元,并可利用这些共享单元来实现数据交换、实时通信和必要的同步操作2. 通过继承Thread类的线程对象 通过操作静态变量实现数据共享实例代码package Pratice;public class Ticket1 { public static void ma...
Java多线程4. 利用Callable接口创建线程 目录1. 引入2. 介绍1)java.util.concurrent.Callable的定义2)线程的创建使用3. 类的结构关系4. FutureTask类的常用方法5. 实例代码1. 引入通过实现Runnable接口创建线程缺陷:run()方法不能返回结果,也不能抛出异常2. 介绍1)java.util.concurrent.Callable的定义@FunctionalInterfaceinterfac...
Java多线程3. 利用Runnable接口创建线程 目录1. 引入2. 介绍3. 使用说明4. 当前运行线程表示1. 引入由于Java语言不允许类的多重继承,如果类本身已经继承了某个父类,所以就无法再继承Thread类,这种情况下可以使用Runnable接口2. 介绍Runnable接口是Java语言中实现线程的接口,定义在java.lang包中,其中只提供了一个抽象方法run() 的声明。从本质上说,任何实现线程的类都必须实现该接口。Thread类就是直接继承了Object类,并实现了R...
Java多线程2. 通过继承Thread类创建线程 目录一、Thread类构造方法二、Thread类常用方法三、线程的创建步骤四、实例代码一、Thread类构造方法 public Thread() 创建一个线程对象,对象名称为" Thread-n "的·形式 public Thread(String name) 创建一个名为name的线程对象 public Thread(Runnable target) 通过利用实现R...