Java Socket
2016-03-09 16:38
441 查看
常用端口号:http:80 ftp:21 telnet:23
java中的网络支持:
1.InetAddress:用于标识网络上的硬件资源
2.URL:统一资源定位符 通过URL可以直接读取或者写入网络上的数据
3.Sockets:使用TCP协议实现网络通信的Socket相关的类
4.Datagram:使用UDP协议,将数据保存在数据报中,通过网络进行通信。
1.InetAddress类
获取本机InetAddress实例
根据IP地址获取InetAddress实例
如果里面的字符串是主机名也可以获取实例
2.URL类
URL如果未指定端口号,则使用默认端口号,此时getPort方法返回值为-1。
例子:
结果:
2.使用URL读取网页内容
3.Socket通信
客户端Socket类,服务器端的ServerSocket类
具体步骤:
1、创建ServerSocket和Socket
2.打开连接到Socket的输入/输出流
3.按照协议对Socket进行读/写操作
4.关闭输入输出流、关闭Socket
java中的网络支持:
1.InetAddress:用于标识网络上的硬件资源
2.URL:统一资源定位符 通过URL可以直接读取或者写入网络上的数据
3.Sockets:使用TCP协议实现网络通信的Socket相关的类
4.Datagram:使用UDP协议,将数据保存在数据报中,通过网络进行通信。
1.InetAddress类
获取本机InetAddress实例
InetAddress address = InetAddress.getLocalHost();
根据IP地址获取InetAddress实例
InetAddress.getByName("1.1.1.10");
如果里面的字符串是主机名也可以获取实例
2.URL类
URL如果未指定端口号,则使用默认端口号,此时getPort方法返回值为-1。
例子:
URL a = new URL("http://www.baidu.com"); URL url = new URL(a,"/index.html?username=tom#test"); System.out.println("协议:" + url.getProtocol()); System.out.println("主机:" + url.getHost()); System.out.println("端口:" + url.getPort()); System.out.println("文件路径:" + url.getPath()); System.out.println("文件名:" + url.getFile()); System.out.println("相对路径:" + url.getRef()); System.out.println("查询字符串:" + url.getQuery());
结果:
协议:http 主机:www.baidu.com 端口:-1 文件路径:/index.html 文件名:/index.html?username=tom 相对路径:test 查询字符串:username=tom
2.使用URL读取网页内容
InputStream is=url.openStream(); InputStreamReader isr = new InputStreamReader(is,"utf-8"); BufferedReader br= new BufferedReader(isr); String data = br.readLine(); while(data != null){ System.out.println(data); data = br.readLine(); } br.close(); isr.close(); is.close();
3.Socket通信
客户端Socket类,服务器端的ServerSocket类
具体步骤:
1、创建ServerSocket和Socket
2.打开连接到Socket的输入/输出流
3.按照协议对Socket进行读/写操作
4.关闭输入输出流、关闭Socket
相关文章推荐
- 工作知识点总结 Java知识点总结
- Eclipse配置问题,当jdk的安装路径改变了,eclipse打不开了
- Hibernate、Mybatis 通过数据库表反向生成java类和配置
- java的动态代理机制详解
- Eclipse和MyEclipse安装和使用git(egit)图解笔记---插件位置超链接
- Java复习(2)-面向对象
- Eclipse常用快捷键
- [置顶] Java程序操作数据库SQLserver详解
- Java程序操作数据库SQLserver详解
- Eclipse搭建Android开发环境(安装ADT,Android4.4.2)
- Java虚拟机的类加载机制
- Java对象及对象引用变量
- Java学习路线
- java.lang.OutOfMemoryError: heap space、PermGen space
- Java 中 Equals和==的区别
- 设计模式之java
- java 使用jdbc向mysql数据库中插入1亿条数据
- java.util —— 工具类
- Java枚举类型
- Spring 静态资源配置