黑马程序员-java之网络编程

------------------android培训java培训、期待与您交流-----------------

 

需求:自定义服务端,允许浏览器或者telnet作为客户端访问
代码:
class ServerDemo{
 public static void main(String[] args) throws Exception{
  ServerSocket ss = new ServerSocket(11000);//创建一个服务器Socket对象,监听

11000端口
  Socket s = ss.accept();//获取服务器接收到的客户端Socket信息
  System.out.println(s.getInetAddress().getHostAddress());//打印客户端IP地址
  InputStream in = s.getInputStream();//获取输入流
  byte[] buf = new byte[1024];//定义个长度为1KB的字节数组,用于接受客户端信息
  int len = in.read(buf);//输入流接收到信息的字节长度
  System.out.println(buf,0,len);//打印读取到的客户端发送的信息
  PrintWriter out = new PrintWriter(s.getOutputStream(),true)//创建一个

PrintWriter对象,关联输出字节流
  out.println("<font color='red' size='7'>客户端你好</font>");//向客户端发送

固定信息
  s.close();//关闭接收字节流
  ss.colse();//关闭服务器Socket端口
 }
}

需求:自定义浏览器,访问Tomcat服务器
代码:
 Socket s = new Socket("192.168.1.254",8080);//创建客户端Socket对象
 PrintWriter out = new PrintWriter(s.getOutputStream(),true);创建字符流PrintWriter对

象关联字节输出流
 out.println("GET /myweb/demo.html HTTP/1.1");//发送信息(get方式访问服务器)
 out.println("Accept:*/*");//接收所有类型的文件
 out.println("Accept-Language:zh-cn");//接收简体中文
 out.println("Host:192.168.1.254:8080");//发送到的主机地址和端口
 out.println("Connection:Keep-Alive");//连接状态:保持存活
 out.println("");
 out.println("");//空行用于和主体消息隔开
 BufferedReader buf = new BufferedReader(new InputStreamReader(s.getInputStream

()));///创建缓冲字符流关联字节输入流
 String line = null;//定义字符串变量用于接收一行输入字符流
 while((line=bufr.readLine())!=null){//读取到的字符输入流不为空则打印信息
  System.out.println(line);
 }
 s.close();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值