📜  Java的.net.CacheRequest类在Java中

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

Java的.net.CacheRequest类在Java中

当需要在ResponseCache 中存储资源时, CacheRequest类在Java使用。更准确地说,此类的实例为 OutputStream 对象提供了将资源数据存储到缓存中的优势,实际上,此 OutputStream 对象是由协议处理程序调用的。 CacheRequest类与 Authenticator、CacheResponse、ServerSocket、SocketAddress 等其他类一起属于Java.net

AuthenticatorInet6AddressServerSocket
CacheRequestInetAddressSocket
CacheResponseInetSocketAddressSocketAddress
ContentHandlerInterfaceAddressSocketImpl
CookieHandlerJarURLConnection SocketPermission
CookieManagerMulticastSocketURI
DatagramPacketNetPermissionURL

Java.Net Package 是一个强大的类的容器,它为Java提供网络基础设施。现在,详细介绍此类中存在的两种方法,如下所示:

  1. 中止()M ethod
  2. getBody()方法

方法一: abort()方法

它允许缓存存储操作被中断和放弃。因此,它用于中止缓存响应,每当发生 IOException 时,当前缓存操作就会中止。因此,简单来说,它会中止缓存响应的尝试。

句法 :



public abstract void abort()

异常:如果遇到任何输入输出错误,则抛出 IOException

方法二: getBody()方法

它只是返回一个可以访问响应主体的 InputStream。

句法:

public abstract OutputStream getBody ()

返回类型 应为其启动响应的 OutputStream。

异常:如果遇到任何输入输出错误,则抛出 IOException

执行:

例子

Java
// Java Program to illustrate CacheRequest Class
// java.net package
 
// Importing IOException class from
// java,io package
import java.io.IOException;
// Importing all classes from java.net package package
// to create an applet to run on anetwork
import java.net.*;
// Importing List and Map classes from
// java.util package
import java.util.List;
import java.util.Map;
 
// Main class
public class GFG {
 
    // Main driver method
    public static void main(String args[]) throws Exception
    {
 
        // Passing the string uri
        String ur = "https://www.geeksforgeeks.org";
 
        // Now, calling the constructor of the URI class
        URI ur1 = new URI(ur);
 
        // Passing the url
        URL url = new URL(
            "https://www.geeksforgeeks.org/category/java-programs/");
 
        // Now, calling the constructor of the URLConnection
        URLConnection uc = url.openConnection();
 
        ResponseCache responseCache = new ResponseCache() {
            // Calling the abstract methods
            public CacheResponse get(
                URI ur, String reqMethod,
                Map > rqstHeaders)
                throws IOException
            {
                return null;
            }
 
            @Override
            public CacheRequest put(URI ur,
                                    URLConnection conn)
                throws IOException
            {
                return null;
            }
        };
 
        // Display message only
        System.out.println(
            "The put() method has been initiated and called Successfully!");
 
        // The put() method returns the
        // CacheRequest for recording
        System.out.println("The put() method returns: "
                           + responseCache.put(ur1, uc));
    }
}


输出
The put() method has been initiated and called Successfully!
The put() method returns: null

最后,我们结束了与此类相关的纯粹技术内容,让我们最终了解一下此类在现实世界中的应用程序。这个类在软件人员的日常生活中间接使用,因为它提供了用于实现广泛通用的网络应用程序的类。

  • 网络
  • 文件传输
  • 电子邮件。
  • 远程终端访问