JAVA ’ 目录归档

《TensorFlow官方文档》入门指南

入门指南

有关TensorFlow编程基础知识的简要介绍,参考以下指南:

MNIST(一个大型的手写体数字数据库,译者注)已经成为试用新机器学习工具包的规范数据集。我们提供三个指南,每个指南都展示了在TensorFlow上训练MNIST模型的不同方法:

阅读全文

并发队列-无界阻塞延迟队列DelayQueue原理探究

一、前言

DelayQueue队列中每个元素都有个过期时间,并且队列是个优先级队列,当从队列获取元素时候,只有过期元素才会出队列。
阅读全文

Java中调度线程池ScheduledThreadPoolExecutor原理探究

一、 前言

前面讲解过Java中线程池ThreadPoolExecutor原理探究,ThreadPoolExecutor是Executors中一部分功能,下面来介绍另外一部分功能也就是ScheduledThreadPoolExecutor的实现,后者是一个可以在一定延迟时候或者定时进行任务调度的线程池。
阅读全文

JEP 200:模块化JDK

原文链接   译者:carvendy

JEP 200:模块化JDK

作者  Mark Reinhold
创建  2014/07/22 14:08
更新  2017/03/08 13:58
类型  特性
状态  集成
域   SE
JSR   376
讨论  拼图的开发在openjdk.java.net
努力  XL
持续时间  XL
优先  l
检验人 Alan Bateman, Alex Buckley, Paul Sandoz
支持  Brian Goetz
发行  9
版本  8051618
依赖  JEP 220:模块化运行时镜像
JEP 261:模块系统
JEP 201:模块化源码

阅读全文

常用开源框架扩展清单之原理

一、前言

评价一个框架是否是优秀的,其中必有一点是该框架是否留足了可扩展的接口。我们在实际做项目中很多情况下就是基于某某框架,然后在这个框架留出的扩展接口上进行业务开发,所以很有必要对这些框架留出了哪些扩展点,这些扩展点是干啥用的有个心知肚明的了解。本文针对作者项目中用到的tomcat,spring扩展点进行记录,作为记录笔记,以便查找。
阅读全文

ClassLoader解惑

一、什么是Classloader

一个Java程序要想运行起来,首先需要经过编译生成 .class文件,然后创建一个运行环境(jvm)来加载字节码文件到内存运行,而.class 文件是怎样被加载中jvm 中的就是Java Classloader所做的事情。

那么.class文件什么时候会被类加载器加载到jvm中运行那?比如执行new操作时候,当我们使用Class.forName(“包路径+类名”),Class.forName(“包路径+类名”,classloader),classloader.loadclass(“包路径+类名”);时候就触发了类加载器去类加载对应的路径去查找*.class,并创建Class对象。
阅读全文

《Maven官方文档》选择可移植的Wagon提供者

原文链接   译者:carvendy

选择可移植的Wagon提供者

默认,Maven使用java.net.URLConnectionHttpURLConnection)类提供使用JDK接入仓库使用HTTP/HTTPS协议。不行地,支持这个实现由确定的bug,Maven使用这可能发现不能链接服务端并需要一些配置。一个奇怪的行为例包含着行包装授权头Base64值,当密码很长和使用缓存优先可以授权连接同样的服务端。

Maven 2.2.0 尝试修改这问题通过Wagon实现基于Apache HttpClient。不幸地,很快地HttpClient不支持NTLM(至少,version 2),影响意味着用户在代理服务器在NTLMv2后不能使用Maven 2.2.0。

希望地,解决这些,Maven 2.2.1将支持指定你想使用的Wagon提供者和给定的协议在构建过程中。从role-hint组件为了Wagon,提供者名字将被附加到协议使用的格式==<protocol>-<provider>==。

Maven 2.2.1,两种方式指定Wagon提供者应该使用:命令行,或者==<server>配置部分在settings.xml==。 阅读全文

《JAVA模块化系统》翻译邀请

2017年6月13日份,JAVA模块化系统在JCP执行委员会中投票通过,意味着在JAVA9中我们将能使用JAVA的模块化能力,我们团队也在开发和使用一个模块化框架TITAN。所以并发网本月组织翻译JAVA模块化系统 (拼图项目)。

阅读全文

《Maven官方文档》密码加密

原文链接   译者:carvendy

密码加密

  1. 介绍
  2. 怎么创建一个主密码
  3. 怎么加密服务端密码
  4. 怎么保持主密码可移动驱动器
  5. 提示

阅读全文

常用开源框架中设计模式使用分析

一、前言

说起来设计模式,大家应该都耳熟能详,设计模式代表了软件设计的最佳实践,是经过不断总结提炼出来的代码设计经验的分类总结,这些模式或者可以简化代码,或者可以是代码逻辑开起来清晰,或者对功能扩展很方便…。

设计模式按照使用场景可以分为三大类:创建型模式(Creational Patterns)、结构型模式(Structural Patterns)、行为型模式(Behavioral Patterns)。

阅读全文

JAVA互斥锁(synchronized&Lock):行为分析及源码

JVM中有这样一段注释:

[code lang=”java”]
// The base-class, PlatformEvent, is platform-specific while the ParkEvent is
// platform-independent. PlatformEvent provides park(), unpark(), etc., and
// is abstract — that is, a PlatformEvent should never be instantiated except
// as part of a ParkEvent.
// Equivalently we could have defined a platform-independent base-class that
// exported Allocate(), Release(), etc. The platform-specific class would extend
// that base-class, adding park(), unpark(), etc.
//
// A word of caution: The JVM uses 2 very similar constructs:
// 1. ParkEvent are used for Java-level "monitor" synchronization.
// 2. Parkers are used by JSR166-JUC park-unpark.
//
// We’ll want to eventually merge these redundant facilities and use ParkEvent.
[/code]

阅读全文

并发队列中迭代器弱一致性原理探究

一、前言

并发队列里面的Iterators是弱一致性的,next返回的是队列某一个时间点或者创建迭代器时候的状态的反映。当创建迭代器后,其他线程删除了该元素时候并不会抛出java.util.ConcurrentModificationException异常,能够保持创建迭代器后的元素一定被正确的next出来。

阅读全文

Java NIO系列教程(十 五)Java NIO Path

原文链接  译者:章筱虎

Path接口是java NIO2的一部分。首次在java 7中引入。Path接口在java.nio.file包下,所以全称是java.nio.file.Path。 java中的Path表示文件系统的路径。可以指向文件或文件夹。也有相对路径和绝对路径之分。绝对路径表示从文件系统的根路径到文件或是文件夹的路径。相对路径表示从特定路径下访问指定文件或文件夹的路径。相对路径的概念可能有点迷糊。不用担心,我将在本文的后面详细介绍相关细节。

不要将文件系统的path和操作系统的环境变量path搞混淆。java.nio.file.Path接口和操作系统的path环境变量没有任何关系。

在很多方面,java.nio.file.Path接口和java.io.File有相似性,但也有一些细微的差别。在很多情况下,可以用Path来代替File类。

阅读全文

《Maven官方文档》目录指南

原文链接   译者:carvendy

文档

Maven入门

介绍

阅读全文

《Maven官方文档》使用镜像仓库

原文链接  译者:carvendy

使用镜像仓库

在你指定的仓库中选择你想下载的确定工具,利润依赖或者maven插件。仓库可以什么在项目里,意味着如果你有一个自定义仓库,你将分析你的项目和容易地获取正确的配置。可是,你可能想使用一些可替换的镜像来作为特殊仓库而不改变项目文件。

使用镜像的一些原因:

  • 这是一个在网络上同步的镜像,位置很近也很快。
  • 你想替换掉一个特别的仓库使用你自己的网络仓库将会有更好的控制权
  • 你想使用仓库管理来提供本地缓存镜像,需要使用它的URL。

阅读全文

return top