JAVA ’ 目录归档

《JAVA8开发指南》第二章采用Lambda表达式

原文链接 译者:hyssop

采用Lambda表达式

本章,你将学习到如何采用JAVA8的重要特性Lambda表达式。首先,你要了解“行为参数”这种模式。该模式能够使你写出来的代码适应需求变化。然后,你将看到该模式如何使得Lambda表达式的使用与以往比变得更加简洁。然后,你将学习如何精确地定位Lambda表达式的使用场景和使用方式。你也将了解JAVA8的另一个特性-方法参数,它能使你的代码更简洁更易读。带着所有这些新知识实战一个重构代码的例子。最后,你也将学习到如何使用Lambda表达式和方法参数。

阅读全文

《Mybatis官方文档》翻译邀请

在持久层我们经常使用Ibatis框架,不过从10年开始这个框架已经不再维护了(Ibatis官网),原Ibatis的开发已经投入到MyBatis的开发中,所以本月组织大家翻译《Mybatis官方文档》(需要翻墙),每次领取一节,翻译完后再领取其他章节。翻译完成之后请登录到并发网提交成待审核状态,会有专门的编辑校对后进行发布。值得注意的是官网部分文档已经有翻译了,参与翻译的人可以参考下。

阅读全文

CompletableFuture 不能被中断

原文链接 作者:Tomasz Nurkiewicz  译者:simonwang

我之前写过一篇关于InterruptedException and interrupting threads的文章。总之,如果你调用Future.cancel(),那么Future不仅会终止正在等待的get(),还会试图去中断底层的线程。这是个很重要的特征,它能够使线程池变得更加利于使用。我在之前的文章中也说过,相对于标准的Future,尽量使用CompletableFuture。但事实证明,Future的更加强大的兄弟-CompletableFuture并不能优雅地处理cancel()。

阅读全文

Java中的Functor与monad

原文链接 作者:Tomasz Nurkiewicz  译者:simonwang

这篇文章最初是我们的Reactive Programming with RxJava一书中的附录,然而提到monad即使它与响应式编程有关,但也只是一点点,所以我决定把它单独拿出来出一篇博客。我意识到对monad一边解释一边纠正,对我而言这就像是在编程博客上使用“Hello World”一样(是对是错拉出来溜溜)。而且这篇文章从Java数据结构与库的角度对functor与monad给出了独特见解,因此我认为这值得拿出来分享。

阅读全文

为什么多线程是个坏主意

原文地址:

Unix编程艺术 中,提到了尽量避免多线程编程模型, 认为这样只会增加复杂度, 提倡使用多进程, 这样本质上就可以避免多线程『共享内存数据』产生的 “corruotped memory” 问题。

其中, 提到了一篇文章 Why Threads Are A Bad Idea, 对于多线程编程和事件编程分析的非常好, 具体的翻译如下:

阅读全文

《ZooKeeper官方指南》一致性保障

本文翻译自《ZooKeeper官方指南》,译者:追云,校对:追云

一致性保障

ZooKeeper是一个高性能,可扩展的服务。虽然读比写更快,但在设计上,它的读操作和写操作都很快。之所以会出现读比写更快,是因为在某些“读”的情况下,ZooKeeper 可以使用比较旧的数据,这得益于ZooKeeper的一致性保障:

阅读全文

《Jersey用户指南》–序言

序言

此书是Jersey 2.23.1的用户手册。我们努力及时更新这本手册因为Jersey 2.23.1增加了一些新的功能。当您在阅读这本用户手册的时候, 请同时参考我们的Jersey  API 手册从而进一步理解Jersey 的功能和API。

如果您也想给这本手册贡献一点力量或者对这本手册没有涵盖的内容抱有疑问,请联系我们:users@jersey.java.net。同时,如果您在这本用户手册上发现任何错误, 请把发现的问题注册到Jersey JIRA Issue Tracker上的文档部分 阅读全文

Java实现 二叉搜索树算法(BST)

作者:李强强(泥瓦匠)

“岁月极美,在于它必然的流逝”
“春花 秋月 夏日 冬雪”
— 三毛 阅读全文

Commons IO 官方文档

本文翻译自 Commons IO 官方文档 译者:MagicWolf

Common IO 是一个工具库,用来帮助开发IO功能 它包括6个主要部分

  • Utility classes – 包括一些静态方法来执行常用任务
  • InputInputStreamReader 实现
  • OutputOutputStreamWriter 实现
  • Filters – 多种文件过滤器实现(定义了 IOFileFilter接口,同时继承了 FileFilterFilenameFilter 接口)
  • Comparators – 用于文件比较的多种java.util.Comparatot实现

阅读全文

《JAVA8开发指南》使用流式操作

本文翻译自《JAVA开发指南》第三章  

本章中,你将学习到怎样使用Stream API进行开发。首先,你将会了解Stream API背后的机制,什么是流以及流的用处。其次,你将学习到一系列的流式操作、流式数据处理模型以及能让你写出更复杂数据查询的流式集合操作。接下来是如何应用流式操作的例子。最后,你将学习到并行流。

阅读全文

《Jersey用户指南》翻译邀请

7月并发网组织大家翻译《Jersey用户指南》。有兴趣的同学可以通过评论领取,翻译完成之后再并发网直接提交审核。

一次领取一篇,一篇建议领取一个章节,翻译完成之后可以继续领取,领取文章后最好在一个星期内翻译完成,如果不能完成翻译请通过评论告知,以便于其他人可以继续翻译。

阅读全文

《JAVA8开发指南》为什么你需要关注 JAVA8

本文翻译自《JAVA开发指南》第一章  

作者:Raoul-Gabriel Urma   译者:二进制的蛇

本章包含

  • 代码的可读性
  • 多核
  • JAVA8特性的快速指南

JAVA8:为什么你需要关注?

JAVA已经更新了!在 2014 年 3 月,JAVA发布了新版本-JAVA8,JAVA8 引入的一些新特性可能会改变你日常中基本的编码方式。但不用担心,这本简洁的指南会带着你掌握一些要领,现在你就可以开始阅读。

阅读全文

《Java8开发指南》翻译邀请

 

InterruptedException 和 interrupting threads 的一些说明

原文链接 作者:  译者:simonwang

如果InterruptedException没有检测到异常,可能没人会注意到它,这会导致很多bug不被发现。而检测到这个异常的人大多数都是草率地、不恰当地处理着它。

阅读全文

事务必会必知

作者:泥瓦匠 原文链接:传送门

事务,大家所熟悉的事务(Transaction),基本上会就往Spring事务靠。其实Spring事务管理基于底层数据库本身的事务处理机制。数据库事务的基础,是掌握Spring事务管理的基础。这篇总结下数据库事务。 阅读全文

return top