代码黑马程序员java教程:tcp协议服务端多线程技术

w3cschool 在线教程  时间:2021-01-31  阅读:()

TCP协议服务端多线程技术

代码

UploadTask. java

1. import java.net.Socket;

2. import java. io. InputStream;

3. import java. io.FileOutputStream;

4. import java. io.File;

5. import java. io.OutputStream;

6.

7. public class UploadTask implements Runnable

8. {

9. private Socket s;

10.

11. public UploadTask(Socket s) {

12. this. s = s;

13. }

14.

15. public void run() {

16.

17. int count = 0;

18.

19. String ip = s.getInetAddress() .getHostAddress() ;

20. System.out.println(ip + ". . . . . .connected") ;

21.

22. try{

23. InputStream in = s.getInputStream() ;

24.

25. File dir = new File("c:\\pic") ;

26. if(!dir.exists() ) {

27. dir.mkdirs() ;

28. }

29. File file = new File(dir, ip + ".bmp") ;

30.

31. //如果文件已经存在于服务端。

32. while(file.exists() ) {

33. file = new File(dir, ip + "(" + (++count) + ") .bmp") ;

34. }

35.

36. FileOutputStream fos = new FileOutputStream(file) ;

37.

38. byte[] buf = new byte[1024] ;

39.

40. int len = 0;

41.

42. while( (len = in.read(buf) ) != -1) {

43. fos.write(buf,0, len) ;

44. }

45.

46. OutputStream out = s.getOutputStream() ;

47.

48. out.write("上传成功".getBytes() ) ;

49.

50. fos. close() ;

51. s. close() ;

52. }catch(Exception e) {

53. e.printStackTrace() ;

54. }

55. }

56. }

复制代码

UploadServerDemo. java

1. import java. io. IOException;

2. import java.net.ServerSocket;

3. import java.net.Socket;

4. import java. io. InputStream;

5. import java. io.File;

6. import java. io.FileOutputStream;

7. import java. io.OutputStream;

8. import java. io.FileNotFoundException;

9. import java. io. IOException;

10.

11. public class UploadPicServer

12. {

13. public static voidmain(String[] args) throws FileNotFoundException, IOException{

14.

15. ServerSocket ss = new ServerSocket(10006) ;

16.

17. while(true) {

18. Socket s = ss.accept() ;

19. new Thread(new UploadTask(s) ) . start() ;

20. }

21.

22. //ss. close() ;

23. }

24. }

复制代码

. .

小白云 (80元/月),四川德阳 4核2G,山东枣庄 4核2G,美国VPS20元/月起三网CN2

小白云是一家国人自营的企业IDC,主营国内外VPS,致力于让每一个用户都能轻松、快速、经济地享受高端的服务,成立于2019年,拥有国内大带宽高防御的特点,专注于DDoS/CC等攻击的防护;海外线路精选纯CN2线路,以确保用户体验的首选线路,商家线上多名客服一对一解决处理用户的问题,提供7*24无人全自动化服务。商家承诺绝不超开,以用户体验为中心为用提供服务,一直坚持主打以产品质量用户体验性以及高效...

DMIT(季度$28.88)调整洛杉矶CN2 GIA优化端口

对于DMIT商家已经关注有一些时候,看到不少的隔壁朋友们都有分享到,但是这篇还是我第一次分享这个服务商。根据看介绍,DMIT是一家成立于2017年的美国商家,据说是由几位留美学生创立的,数据中心位于香港、伯力G-Core和洛杉矶,主打香港CN2直连云服务器、美国CN2直连云服务器产品。最近看到DMIT商家有对洛杉矶CN2 GIA VPS端口进行了升级,不过价格没有变化,依然是季付28.88美元起。...

RFCHOST - 洛杉矶CN2 GIA VPS季付23.9美元起 100Mbps带宽

RFCHOST,这个服务商我们可能有一些朋友知道的。不要看官网是英文就以为是老外服务商,实际上这个服务商公司在上海。我们实际上看到的很多商家,有的是繁体,有的是英文,实际上很多都是我们国人朋友做的,有的甚至还做好几个品牌域名,实际上都是一个公司。对于RFCHOST商家还是第一次分享他们家的信息,公司成立大约2015年左右。目前RFCHOST洛杉矶机房VPS正进行优惠促销,采用CN2优化线路,电信双...

w3cschool 在线教程为你推荐
dvdes-644请问dvdes-702 最后一个白裙子演员是谁啊.谢谢316不锈钢和304哪个好请问316不锈钢和304不锈钢有什么区别?从外观如何辨别?自然吸气和涡轮增压哪个好汽车涡轮增压好还是自然吸气好录屏软件哪个好有什么好用的录制屏幕的软件吗电脑杀毒软件哪个好现在电脑用哪个杀毒软件最好传奇类手游哪个好传奇哪个版本比较好玩 最好玩的传奇手游排行榜小说软件哪个好用免费看小说,哪个软件好,要免费的朱祁钰和朱祁镇哪个好历史上真实的明英宗是怎么样的?性格之类的。朱祁钰和朱祁镇的相关的最好可以详细点的浮动利率和固定利率哪个好银行贷款是选固定利率好还是浮动利率yy空间登录怎么搞YY空间
域名抢注 中国万网虚拟主机 冰山互联 mach5 godaddy优惠码 魔兽世界台湾服务器 毫秒英文 hostker 东莞数据中心 qq云端 国外ip加速器 银盘服务是什么 外贸空间 工信部icp备案查询 乐视会员免费领取 亿库 美国vpn代理 winserver2008下载 ubuntu安装教程 卡巴斯基免费版 更多