网站大量收购独家精品文档,联系QQ:2885784924

2017年你不能错过的Java类库.pdf

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2017年你不能错过的Java类库

2017年你不能错过的 Java类库 各位读者好, 这篇文章是在我看过 Andres Almiray 的一篇介绍文后,整理出来的。 因为内容非常好,我便将它整理成参考列表分享给大家, 同时附上各个库的特性简介和示 例。 请欣赏! Guice Guice (发音同 ‘juice’) ,是一个 Google 开发的轻量级依赖性注入框架,适合 Java 6 以 上的版本。 # Typical dependency injection public class DatabaseTransactionLogProvider implements ProviderTransactionLog { @Inject Connection connection; public TransactionLog get() { return new DatabaseTransactionLog(connection); } } # FactoryModuleBuilder generates factory using your interface public interface PaymentFactory { Payment create(Date startDate, Money amount); } OkHttp HTTP 是现代应用程序实现网络连接的途径,也是我们进行数据和媒体交换的工具。高效使 用 HTTP能使你的东西加载更快,并节省带宽。 OkHttp是一个非常高效的 HTTP客户端,默认情况下: 支持 HTTP/2,允许对同一主机的请求共用一个套接字。 如果 HTTP/2 不可用,连接池会减少请求延迟。 透明的 GZIP可以减少下载流量。 响应的缓存避免了重复的网络请求。 OkHttpClient client = new OkHttpClient(); String run(String url) throws IOException { Request request = new Request.Builder() .url(url) .build(); Response response = client.newCall(request).execute(); return response.body().string(); } Retrofit Retrofit 是 Square 下的类型安全的 HTTP 客户端,支持 Android 和 Java 等,它能将你的 HTTP API 转换为 Java 接口。 Retrofit 将 HTTP API 转换为 Java 接口: public interface GitHubService { @GET(users/{user}/repos) CallListRepolistRepos(@Path(user) String user); } Retrofit 类实现 GitHubService 接口: Retrofit retrofit = new Retrofit.Builder() .baseUrl(/) .build(); GitHubService service = retrofit.create(GitHubService.class); 来自 GitHubService 的每个 Call 都能产生为远程 Web 服务产生一个异步或同步 HTTP 请 求: CallListRepo repos = service.listRepos(octocat); JDeferred 与 JQuery类似的 Java Deferred/Promise类库 Deferred 对象和 Promise Promise 回调:.then(…), .done(…), .fail(…), .progress(…), .always(…) 支持多个 promises - .when(p1, p2, p3, …).then(…) Callable 和 Runnable - wrappers.when(new Runnable() {…}) 使用 Executor 服务 支持 Java 泛型: DeferredInteger, Exception, Doubledeferred;, deferred.resolve(10);, deferred.reject(new Exception());,deferred.notif

文档评论(0)

l215322 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档