代码黑马程序员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. }

复制代码

. .

趣米云(18元/月)香港三网CN2云服器低至;1核1G/30G系统盘+20G数据盘/10M带宽

趣米云怎么样?趣米云是创建于2021年的国人IDC商家,虽然刚刚成立,但站长早期为3家IDC提供技术服务,已从业2年之久,目前主要从事出售香港vps、香港独立服务器、香港站群服务器等,目前在售VPS线路有三网CN2、CN2 GIA,该公司旗下产品均采用KVM虚拟化架构。由于内存资源大部分已售,而IP大量闲置,因此我们本月新增1c1g优惠套餐。点击进入:趣米云官方网站地址香港三网CN2云服务器机型活...

Spinservers:美国圣何塞机房少量补货/双E5/64GB DDR4/2TB SSD/10Gbps端口月流量10TB/$111/月

Chia矿机,Spinservers怎么样?Spinservers好不好,Spinservers大硬盘服务器。Spinservers刚刚在美国圣何塞机房补货120台独立服务器,CPU都是双E5系列,64-512GB DDR4内存,超大SSD或NVMe存储,数量有限,机器都是预部署好的,下单即可上架,无需人工干预,有需要的朋友抓紧下单哦。Spinservers是Majestic Hosting So...

零途云月付31.9元起,香港cn2 gia线路

零途云是一家香港公司,主要产品香港cn2 gia线路、美国Cera线路云主机,美国CERA高防服务器,日本CN2直连服务器;同时提供香港多ip站群云服务器。即日起,购买香港/美国/日本云服务器享受9折优惠,新用户有优惠码:LINGTUYUN,使用即可打折。目前,零途云还推出性价比非常高香港多ip站群云服务器,有需要的,可以关注一下。零途云优惠码:优惠码:LINGTUYUN (新用户优惠,享受9折优...

w3cschool 在线教程为你推荐
金士顿内存卡手机内存卡是金士顿好还是闪迪?美国10次啦导航GPS的四大导航免费送q币活动有没有免费送Q币的活动?集成显卡和独立显卡哪个好集成显卡与独立显卡的区别。985和211哪个好高校是985一般专业还是211好专业?手动挡和自动挡哪个好自动挡和手动挡哪个好?浏览器哪个好用哪款浏览器好用朗逸和速腾哪个好大众速腾与朗逸哪个好炒股软件哪个好最好的炒股软件是哪个?炒股软件哪个好股票软件哪个最好用?
免费域名注册 手机域名注册 香港服务器租用99idc 域名备案信息查询 希网动态域名 cve-2014-6271 godaddy优惠码 表单样式 轻量 web服务器架设软件 申请空间 南昌服务器托管 500m空间 免费mysql 万网空间管理 北京主机托管 windowsserver2008 建站技术 server2008 服务器是什么意思 更多