📜  Java的.net.Proxy类在Java中

📅  最后修改于: 2022-05-13 01:54:47.734000             🧑  作者: Mango

Java的.net.Proxy类在Java中

代理是不可变的对象和类型的工具或应用程序或程序或系统,它有助于保护其用户和计算机的信息。它充当计算机和互联网用户之间的障碍。代理对象定义要与连接一起使用的代理设置。代理服务器已经以某种程序或应用程序的形式预安装在 Windows 中。它会自动保存在设置部分。您还可以自定义要使用代理的站点。 Java.net 包中的InetSocketAddress 类实现了 IP 套接字地址(IP 地址和端口号的组合)。此类的对象是不可变的,可用于绑定、连接目的

Java.net.Proxy类代表一个代理设置,它基本上是一个类型和一个套接字地址。该类包含一个特殊字段,即无代理字段。它被写成代理 NO_PROXY;此设置告诉协议处理程序不要使用任何代理设置并表示直接连接。

语法:类声明

public class Proxy extends Object

让我们在跳到方法之前讨论这个类的构造函数

Proxy(Proxy.Type type, SocketAddress sa)

类的方法如下



Method NameDescription
address()Returns the socket address of the proxy or returns null for a direct connection.
equals()Compares both the proxy objects and returns true only if the type and address are same.
hashCode()Returns a hashcode for the proxy.
toString()Returns a string representation of the proxy.
type()Returns the type of the proxy object.

方法

  1. 首先,我们创建了一个套接字地址以便与代理对象一起使用。
  2. 然后使用该地址创建了一个 HTTP 类型的代理。
  3. 然后我们创建了一个与我们创建的代理的 URL 连接。

执行:

例子

Java
// Java Program to illustrate Proxy Class
// of java.net package
  
// Importing input output classes
import java.io.*;
// importing java net package to use address and url fields
import java.net.*;
// importing the java proxy package
import java.net.Proxy;
  
// Main class
public class GFG {
  
    // Main driver method
    public static void main(String[] args)
    {
        // Creating  socket addressaddresses with port 8080
        // by creating object of SocketAddress class
        SocketAddress addr = new InetSocketAddress(
            "webcache.example.com", 8080);
  
        // Creating proxy object of type HTTP with
        // adress addr using the class constructor
        Proxy proxy = new Proxy(Proxy.Type.HTTP, addr);
  
        // Try block to check for exceptions
        try {
  
            // Creating URL connection using the above proxy
            // by creating an object of URL class
            URL url = new URL("http://java.example.org/");
  
            // Now setting the connecting by
            // creating an object of URLConnection class
            URLConnection conn = url.openConnection(proxy);
        }
  
        // Catch block to handle the exceptions
        catch (Exception e) {
  
            // Print the line number here exception occured
            // using the printStackTrace() method
            e.printStackTrace();
  
            // Display message only illustrating
            System.out.println(false);
        }
  
        // Printing Proxy Type
        // using type() method
        System.out.println("Proxy Type: " + proxy.type());
  
        // Printing Proxy Address
        // using address() method
        System.out.println("Proxy Address: "
                           + proxy.address());
  
        // Printing Proxy Hashcode
        // using hashCode() method
        System.out.println("Proxy HasHCode: "
                           + proxy.hashCode());
  
        // Printing Proxy String representation
        // using toString() method
        System.out.println("Proxy String: "
                           + proxy.toString());
    }
}


输出: