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
    
  • 相关阅读:
    Mac os下安装pycurl
    Mac os 10.9下面配置JAVA_HOME
    同步,异步,阻塞,非阻塞
    Python处理XML
    Apriori算法在购物篮分析中的运用
    Python抓取双色球数据
    为什么这么多Python框架
    Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置说明
    ubuntu 开机自动挂载分区
    VIM 配置随手记
  • 原文地址:https://www.cnblogs.com/Nortonary/p/14783789.html
Copyright © 2011-2022 走看看