关闭

Java9 基于异步响应流的发布-订阅框架

为响应式流(Reactive Streams)增加的发布-订阅(publisher-subscriber)框架、并发包CompletableFuture类的增强,等等。。 JEP266中为Java语言的并发性又引入许多新的方式:响应式流,一个为它而生互操作性更强的发布-订阅框架;并且为了Java9其他API而增强的 java.util.concurrent.CompletableFuture 类,...
阅读(5020) 评论(4)

Java9 集合工厂方法

使集合框架更便捷的工厂方法JEP269中提议,为集合框架增添一些工厂方法,来使创建不可变集合类与含有少量元素的Map变得更加便捷。下文就为什么它们应运而生来展开详细的阐述。集合框架增加工厂方法是必然的结果Java饱受其语法臃肿的批评,比如,创建一个小而确定的集合类时(比如一个List),需要使用它的构造方法,然后将它的引用存放在局部变量中,通过引用来多次调用add()方法之后, 最后才来封装这个集合...
阅读(4560) 评论(1)

Java9 进程API详细介绍

官方在JEP 102中引进新的进程API来增强java.lang.Process 类,并且引进java.lang.ProcessHandle 及其嵌套接口Info 来让开发者逃离时常因为要获取一个本地进程的PID而不得不使用本地代码的窘境。本文将详细介绍这些新特性。1、ProcessHandle 与 ProcessHandle.InfoJava 9 为抽象Process 类增加了许多新方法,通过这些...
阅读(3904) 评论(8)

Java9 进程API

1. 概述Java中的进程API在Java5之前还是非常原始的,开启一个新进程唯一的方式是调用Runtime.getRuntime().exec() ,直到Java5发布之后,一些更加简明的开启新进程方式被封装到了ProcessBuilder 中。而在Java9中,你也将能使用一种全新的方式来获取当前系统所有正在运行的进程的相关信息。话不多说,先睹为快!2. 当前Java进程的信息我们通过调用ja...
阅读(3407) 评论(4)

Java9 HTTP2.0 API入门与实践

简述如果您需要使用Java语言来请求HTTP资源,那么你可能会遇到多种解决方案,你最终可能会以一种合理的方式来达成这个目的 —– 引用第三方包。好消息,好消息,黄鹤带着小姨子回来了,皮革厂有救了:Java9除了有模块化特性之外,还附带了一个全新的HTTP客户端API。不仅支持HTTP2.0,还提供了一套有亲和力的API。SO,让我们来剥掉小姨子神秘的蕾丝面纱。HTTP2.0是啥子东东?HTTP2.0...
阅读(4354) 评论(7)

http2概述及Java9对其的支持

HTTP/2概述HTTP/2意在减轻为维护HTTP/1.1复杂的底层架构而带来的痛苦,以提高HTTP/1.1的性能。尽管HTTP/2仍然对HTTP/1.1向下兼容,但它已不再是一个基于文本的协议。当客户端通过HTTP/1.1请求建立一个连接时,所有请求将会被升级。从这一点上看,HTTP/2是用“二进制数据帧”来说话的。HTTP/2多路复用HTTP/2多路复用使得一个单独连接可以处理多个双向流,因而客...
阅读(3472) 评论(4)

Java9 modules (Jigsaw)模块化迁移

要点 通过模块化的方式开发应用程序,实现更好的设计,如关注点分离和封装性。 通过Java平台模块化系统(JPMS),开发者可以定义他们的应用程序模块,决定其他模块如何调用他们的模块,以及他们的模块如何依赖其他模块。 对于已经使用了其他模块系统(如Maven或Gradle)的应用程序来说,还是有可能再加入JPMS。 JDK为开发者提供了一些工具,用于将现有的代码迁移到JPMS。 应用程序代码仍然可以依...
阅读(3502) 评论(2)

Java9新特性之HTTP2和REPL

对Java 9的炒作将不再局限于模块化(modularity),Java 9正在搜罗大量额外的功能模块,这些功能模块正作为Java增强提案(JEP)提交,并在OpenJDK (Java SE的参考实现项目)中实现。在这篇文章中,我们将重点关注一些或将在Java 9整个生命周期中,对开发者的工作生活影响最大的JEP,包括新的HTTP/2支持和JShell REPL(读取-求值-打印-循环),后者带来了...
阅读(3334) 评论(1)

在IDEA中创建Java 9 modules(模块)的Hello World

IntelliJ IDEA 2017.1 支持Java9的模块化特性 (Project Jigsaw)。 在此版本,模块文件中还支持基于特定名称与关键字的自动补全功能 code completion, 并且你可以快速斧正你项目中的模块化代码。So,那就让我们来一探究竟什么是模块化工程。首先,我们创建一个普通的模块工程 IntelliJ IDEA module 其中包含了改变世界的伟大的 “Hello...
阅读(4515) 评论(5)

Java 9 : 从零开始实现模块化(一)

Well, Java 9 is available so let’s make modules! 模块化在Java9中是炒鸡炒鸡重要的!今后,模块将是应用程序的基础构建单位。无论是使用动态语言或静态语言编写,模块都是应用程序的一个重要组成部分,且模块遵循单一功能原则。你可以将任意方法称为模块,正如函数式编程是基于模块一样。好了,总之,你get到这个点之后就记住:以后模块很重要很重要很重要 The i...
阅读(3912) 评论(2)

Java 9 模块化(Modular)介绍

前言 今年,2017年,我们将迎来 Java 语言的 22 岁生日,22岁,对于一个人而言,正是开始大展鸿图的年纪,可是对于日新月异的科技圈中的一门开发语言而言,却是一个傲视群雄的老态龙钟的年纪。 感谢 互联居 的技术分享文章,有兴趣的朋友可以去搜索微信公众号 互联居JVM 语言发展史JVM 家族也是在这22年中茁壮发展,并且都秉承着 Java 的革命口号:一处编译,随处运行。那么,JVM 的带头...
阅读(3661) 评论(2)

超详细的Spring Boot入门笔记

1. Spring Boot 入门 Spring Boot是Spring社区较新的一个项目。该项目的目的是帮助开发者更容易的创建基于Spring的应用程序和服务,让更多人的人更快的对Spring进行入门体验,让Java开发也能够实现Ruby on Rails那样的生产效率。为Spring生态系统提供了一种固定的、约定优于配置风格的框架。 Spring Boot具有如下特性: 为基于Spri...
阅读(3445) 评论(0)

深入分析ConcurrentHashMap的锁分段技术

术语定义 术语 英文 解释 哈希算法 hash algorithm 是一种将任意内容的输入转换成相同长度输出的加密方式,其输出被称为哈希值。...
阅读(3274) 评论(0)

十条穷人思维,来看看你占了几条!

穷人思维一:总是出卖自己的时间,不懂得花钱买时间。当然这对于不少人来说可能是不得已,因为在没有钱的情况下只能出卖自己的时间,但是有些人并非没有钱,只是觉得钱比时间更宝贵,所以情愿花很多时间省下一点点小钱。与之相反的是富人把自己的时间看得非常宝贵,所有低价值、没有创造性、不会给自己带来较大收益的事情都尽可能外包出去。穷人思维二:拼命省钱,但是不知道在赚钱上想办法。为了买房的首付,为了买一样心仪的东西,...
阅读(3083) 评论(1)

Spring Cloud生态圈简介

说到Spring Cloud就不得不提一下微服务,什么是微服务呢?就是Microservice,字面意思来看就是小服务,小型服务,微小型服务,然而它是与传统服务的相对概念。承载传统服务的Web项目,所有功能集成到一个系统,最终打包成一个war包,部署于Web容器,或单机,或集群,基本上没有什么外部的依赖,其有如下特点: (优点) - 开发简单直接,集中式管理 - 基本不会重复开发 -...
阅读(7044) 评论(0)
143条 共10页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:397473次
    • 积分:4926
    • 等级:
    • 排名:第6987名
    • 原创:99篇
    • 转载:34篇
    • 译文:10篇
    • 评论:148条
    联系方式
    QQ : 930999349
    博客专栏
    最新评论