zoukankan      html  css  js  c++  java
  • Java-Web学习-Java基础-Java 11特性(更加局部)

    Java 11

    Java11中针对HTTP Client有大的升级改动,本着该系列博客是面向Java Web编程者的,我觉得需要来介绍一下其标准 HTTP Client的升级,顺便介绍一下其他的新特性。

    本文为Java 11 新特性介绍的学习总结

    HTTP Client Update

    HTTP Client在Java 9中引入并进行不断的升级,终于在Java 11中完成了标准化。现在的HTTP Client完全支持异步非阻塞

    新版的HTTP Client包名改为java.net.http,并提供了对HTTP/2等业界前沿标准的支持(Goodbye,HttpURLConnection!),并在这种支持中广泛使用了Java 9中引入的Flow API,体现了响应式编程的思想,提高了HTTP标准类库的拓展性。

    HttpClient client = HttpClient.newBuilder()
          .version(Version.HTTP_2)
          .followRedirects(Redirect.SAME_PROTOCOL)
          .proxy(ProxySelector.of(new InetSocketAddress("www-proxy.com", 8080)))
          .authenticator(Authenticator.getDefault())
          .build();
    HttpResponse<String> response = client.send(request, BodyHandlers.ofString());
    

    Advanced Java launcher

    Java 11中的Java启动器能够支持运行单一文件的Java源代码,源代码会直接在内存中编译,然后在解释器中执行,但是所有的类需要在一个文件中定义

    Java 10中就支持启动*.class文件、*.jar中的主类、模块主类,而Java 11支持直接指定文件中的类。如果HelloWorld.java中包含一个hello.World类,以下命令将启动该类:

    javac HellowWorld.java
    java -cp . hello.World 
    

    其同于:

    java HelloWorld.java
    
  • 相关阅读:
    [ python ] 线程的操作
    [ python ] 进程的操作
    RabbitMQ 集群
    RabbitMQ 实践及使用
    RabbitMQ 基础知识
    [ python ] FTP作业进阶
    [ python ] 项目一:FTP程序
    [ python ] 网络编程(2)
    [ python ] 网络编程(1)
    Linux 日志系统及分析
  • 原文地址:https://www.cnblogs.com/Nortonary/p/14783789.html
Copyright © 2011-2022 走看看