浙江建设职业技术学院招生网站,用jsp做网站一般会用到什么软件,windows优化大师官方,河南平安建设网站Java网络编程中的常用类
Java为了跨平台#xff0c;在网络应用通信时是不允许直接调用操作系统接口的#xff0c;而是由java.net包来提供网络功能。下面我们来介绍几个java.net包中的常用的类。
InetAddress的使用
作用#xff1a;封装计算机的IP地址和DNS#xff08;没…Java网络编程中的常用类
Java为了跨平台在网络应用通信时是不允许直接调用操作系统接口的而是由java.net包来提供网络功能。下面我们来介绍几个java.net包中的常用的类。
InetAddress的使用
作用封装计算机的IP地址和DNS没有端口信息 注DNS是Domain Name System域名系统。 特点 这个类没有构造方法。如果要得到对象只能通过静态方法getLocalHost()、getByName()、 getAllByName()、 getAddress()、getHostName() 获取本机信息
获取本机信息需要使用getLocalHost方法创建InetAddress对象。getLocalHost()方法返回一个InetAddress对象这个对象包含了本机的IP地址计算机名等信息。
1public class InetTest {
2 public static void main(String[] args)throws Exception {
3 //实例化InetAddress对象
4 InetAddress inetAddress InetAddress.getLocalHost();
5 //返回当前计算机的IP地址
6 System.out.println(inetAddress.getHostAddress());
7 //返回当前计算机名
8 System.out.println(inetAddress.getHostName());
9 }
10}根据域名获取计算机的信息
根据域名获取计算机信息时需要使用getByName(“域名”)方法创建InetAddress对象。
1public class InetTest2 {
2 public static void main(String[] args)throws Exception {
3 InetAddress inetAddress InetAddress.getByName(www.baidu.com);
4 System.out.println(inetAddress.getHostAddress());
5 System.out.println(inetAddress.getHostName());
6 }
7}根据IP获取计算机的信息
根据IP地址获取计算机信息时需要使用getByName(“IP”)方法创建InetAddress对象。
1public class InetTest3 {
2 public static void main(String[] args)throws Exception {
3 InetAddress inetAddress InetAddress.getByName(14.215.177.38);
4 System.out.println(inetAddress.getHostAddress());
5 System.out.println(inetAddress.getHostName());
6 }
7}InetSocketAddress的使用
**作用**包含IP和端口信息常用于Socket通信。此类实现 IP 套接字地址IP 地址 端口号不依赖任何协议。
InetSocketAddress相比较InetAddress多了一个端口号端口的作用一台拥有IP地址的主机可以提供许多服务比如Web服务、FTP服务、SMTP服务等这些服务完全可以通过1个IP地址来实现。
那么主机是怎样区分不同的网络服务呢显然不能只靠IP地址因为IP 地址与网络服务的关系是一对多的关系。实际上是通过“IP地址端口号”来区分不同的服务的。
1public class InetSocketTest {
2 public static void main(String[] args) {
3 InetSocketAddress inetSocketAddress new InetSocketAddress(www.baidu.com,80);
4 System.out.println(inetSocketAddress.getAddress().getHostAddress());
5 System.out.println(inetSocketAddress.getHostName());
6 }
7}URL的使用
IP地址标识了Internet上唯一的计算机而URL则标识了这些计算机上的资源。 URL 代表一个统一资源定位符它是指向互联网“资源”的指针。资源可以是简单的文件或目录也可以是对更为复杂的对象的引用例如对数据库或搜索引擎的查询。
为了方便程序员编程JDK中提供了URL类该类的全名是java.net.URL有了这样一个类就可以使用它的各种方法来对URL对象进行分割、合并等处理。
1public class UrlTest {
2 public static void main(String[] args)throws Exception {
3 URL url new URL(https://www.itbaizhan.com/search.html?kwjava);
4 System.out.println(获取与此URL相关联协议的默认端口url.getDefaultPort());
5 System.out.println(访问资源url.getFile());
6 System.out.println(主机名url.getHost());
7 System.out.println(访问资源路径url.getPath());
8 System.out.println(协议url.getProtocol());
9 System.out.println(参数部分url.getQuery());
10 }
11}通过URL实现最简单的网络爬虫
1public class UrlTest2{
2 public static void main(String[] args)throws Exception {
3 URL url new URL(https://www.baidu.com/);
4 try (BufferedReader br new BufferedReader(new InputStreamReader(url.openStream()))) {
5 StringBuilder sb new StringBuilder();
6 String temp;
7 /*
8 * 这样就可以将网络内容下载到本地机器。
9 * 然后进行数据分析建立索引。这也是搜索引擎的第一步。
10 */
11 while ((temp br.readLine()) ! null) {
12 sb.append(temp);
13 }
14 System.out.println(sb);
1516 } catch (Exception e) {
17 e.printStackTrace();
18 }
19 }
20}