zoukankan      html  css  js  c++  java
  • 上传服务器(多线程)

    package demo05;
    
    import java.io.File;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.net.ServerSocket;
    import java.net.Socket;
    import java.util.Random;
    
    public class UPload implements Runnable {
        private Socket s;
        private FileOutputStream fos;
    
        public UPload(Socket s) {
            this.s = s;
        }
    
        public void run() {
            try {
                // 3.获取输入流
                InputStream in = s.getInputStream();
                // 4.获取文件夹,如果不存在就创建
                File f = new File("f:\aaa");
                if (!f.exists()) {
                    f.mkdirs();
                }
                // 5.创建文件输出流
                String filename = "oracle" + System.currentTimeMillis() + new Random().nextInt(99999) + ".png";
                fos = new FileOutputStream(f + File.separator + filename);
                // 6.写入数据
                byte[] b = new byte[1024];
                int len = 0;
                while ((len = in.read(b)) != -1) {
                    fos.write(b, 0, len);
                }
                
                // 服务器给客服端回复(上传成功)
                OutputStream out = s.getOutputStream();
                out.write("上传成功".getBytes());
    
            } catch (Exception ex) {
                
                ex.printStackTrace();
                
            } finally {
                
                try {
                    // 释放资源
                    fos.close();
                    s.close();
                } catch (IOException e) {
                    
                    e.printStackTrace();
                }
    
            }
    
        }
    
    }
    package demo05;
    
    import java.io.IOException;
    import java.net.ServerSocket;
    import java.net.Socket;
    
    public class test {
        public static void main(String[] args) throws IOException {
            ServerSocket ser =new ServerSocket(8888);
            while(true){
            Socket s =ser.accept();
            UPload u =new UPload(s);
            Thread t =new Thread(u);
            t.start();
            }
            
        }
    }
  • 相关阅读:
    你真的了解JSON吗?
    FormData对象
    javascript类数组
    Windows环境下XAMPP的相关设置
    PhpStorm相关设置
    yarn 与 npm 比较
    JavaScript+HTML+CSS 无缝滚动轮播图的两种方式
    javascript数据类型和类型转换
    焦大:以后seo排名核心是用户需求点的挖掘
    焦大:seo思维进化论(番外)
  • 原文地址:https://www.cnblogs.com/Jxliu/p/9253430.html
Copyright © 2011-2022 走看看