第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > commons-io实现流的拷贝

commons-io实现流的拷贝

时间:2019-09-02 14:23:33

相关推荐

commons-io实现流的拷贝

commons-io实现流的拷贝

一、使用工具的原因

对于流的copy的代码是比较复杂的

例如:实现图片的请求

@WebServlet("/img")public class MyServlet HttpServlet {@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//1. 读取文件FileInputStream fis = new FileInputStream("d://fengjie.jpg");//2. 获取response字节输出流ServletOutputStream os = response.getOutputStream();//3. 完成流的copybyte[] buff = new byte[1024];int len = 0;while ((len = fis.read(buff))!= -1){os.write(buff,0,len);}fis.close();}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request, response);}}

二、使用commons-io工具进行代码优化

pom.xml添加依赖

<dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.6</version></dependency>

调用工具类方法

//fis:输入流//os:输出流IOUtils.copy(fis,os);

优化之后的代码

@WebServlet("/img")public class MyServlet HttpServlet {@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {//1. 读取文件FileInputStream fis = new FileInputStream("d://fengjie.jpg");//2. 获取response字节输出流ServletOutputStream os = response.getOutputStream();//3. 完成流的copyIOUtils.copy(fis,os);fis.close();}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {this.doGet(request, response);}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。