A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 林枢 黑马帝   /  2011-9-6 21:10  /  1845 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

我看毕向东老师的视频 看到24天的自定义服务端
  1. import java.io.*;
  2. import java.net.*;
  3. public class ServerDemo {
  4.        
  5.         public static void main(String[] args) throws Exception {
  6.          
  7.                         ServerSocket ss=new ServerSocket(8888);
  8.                         Socket s= ss.accept();
  9.                        
  10.                         PrintWriter pw= new PrintWriter(s.getOutputStream(),true);
  11.                        
  12.                         InputStream in= s.getInputStream();
  13.                         byte [] buf= new byte[1024];
  14.                         int len;
  15.                         len= in.read();
  16.                         System.out.println(len);
  17.                         System.out.println(new String(buf,0,len));
  18.                         pw.println("<font color='red' size='7'>man give me the ball</font>");
  19.                         //pw.println("飞机");
  20.                         System.out.println(s.getInetAddress().getHostAddress());
  21.                         ss.close();
  22.                        
  23.                  
  24.         }

  25. }
复制代码
为什么浏览器总是无法显示网页
但是 服务器 端又可以收到 访问的IP 并且结束了

评分

参与人数 1技术分 +1 收起 理由
wangfayin + 1 看看下面有没有答案!

查看全部评分

2 个回复

倒序浏览
黑马网友  发表于 2011-9-7 10:37:45
沙发

回复 楼主 的帖子

pw一定要关闭,关闭之后就能正常显示了.
                pw.close();
                ss.close();
回复 使用道具 举报
Socket对象要关闭..
    s.colse();
    ss.colse();
这样就能正常显示了,你的这个程序运行之后,浏览器网页显示的是红色英文句:man give me the ball
另外关闭顺序不要颠倒,Socket对象是建立在ServerSocket对象的accpet方法返回的上的,不能在关闭Socket对象之前关闭ServerSocket
[ 本帖最后由 郭亚飞 于 2011-09-07  15:57 编辑 ]

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马