归档之于 ‘ 2017 年6 月

《Log4j 2 官方文档》自动重加载配置

当通过一个文件加载配置的时候,Log4j可以自动识别配置文件发生变化,并根据变化重新加载。
如果 configuration 的属性monitorInterval 被设置了一个非0的值,那么Log4j2会周期性的检查配置文件。
接下来的例子展示了每隔30秒进行一次检测的例子。(最小的时间间隔是5秒,不能小于5)。

[code]
<?xml version="1.0" encoding="UTF-8"?>

<Configuration monitorInterval="30">

</Configuration>
[/code]

Java锁是如何保证数据可见性的

引言

java.util.concurrent.locks.Lock 接口的Javadoc中有这样一段话:

All Lock implementations must enforce the same memory synchronization semantics as provided by the built-in monitor lock :

  • A successful lock operation acts like a successful monitorEnter action
  • A successful unlock operation acts like a successful monitorExit action

Unsuccessful locking and unlocking operations, and reentrant locking/unlocking operations, do not require any memory synchronization effects.

这段话的核心是j.u.c.locks.Lock接口的实现类具有和synchronized内置锁一样的内存同步语义。

不同于由JVM底层实现的内置锁,Lock接口的实现类是直接用Java代码实现的。如何保证了内存中数据的可见性?下面进行一下分析。

阅读全文

《Maven官方指南》创建一个站点

原文链接     译者:carvendy

创建一个站点

创建内容

第一步,创建你的站点的内容。在Maven中,站点内容划分是有格式的,有这几个可用的:

阅读全文

《Spring官方文档1》17 使用 O/X(Object/XML)映射器对XML进行编组

17 使用 O/X(Object/XML)映射器对XML进行编组

17.1 简介

本章将讨论 Spring 对于 对象/XML 映射的支持。对象/XML 映射,或 O/X 映射,是指将 XML 文档与 XML 文档对象进行互相转换的操作。这一转换操作也被称作 XML 编组,或 XML 序列化。在本章中,这几个概念都指的是同一个东西。 在 O/X 映射中,将一组对象序列化为 XML 的操作是由一个编组器负责的。与之相对,一个反编组器则被用于将 XML 反序列化为一组对象。而这些操作中的 XML 文件来源可能是一份 DOM 文档,一个输入/输出流,或一个 SAX 管理器。 使用 Spring 提供的支持来实现你的 O/X 映射需求具有如下一些好处:

阅读全文

《Spring 5 官方文档》20. CORS 支持

原文链接 译者:dan  QQ:903585177

20. CORS 支持

20.1 简介

出于安全考虑,浏览器禁止AJAX调用驻留在当前来源之外的资源。 例如,当您在一个标签中检查您的银行帐户时,您可以在另一个标签中打开evil.com网站。 evil.com的脚本不能使用您的凭据向您的银行API发出AJAX请求(例如,从您的帐户中提款)!

Cross-origin resource sharing (CORS) 是 大多数浏览器实现的W3C 规范,允许您以灵活的方式指定什么样的跨域请求被授权,而不是使用一些较不安全和不太强大的黑客工具(如IFRAME或JSONP)。

阅读全文

《Spring 5官方文档》-JMX

27.1 引言

Spring对JMX的支持提供了你可以简单、透明的将Spring应用程序集成到JMX的基础架构中。

JMX?
        
本章不是介绍JMX的...它不会试图去解释为什么要使用JMX(或JMX实际代表什么含义)的动机。如果你是JMX的新手,请参考本章末尾的[第27.8节,更多资源](jmx.html#jmx-resources)。

具体来说,Spring JMX支持提供了四个核心功能:

  • 任何Spring bean都会自动注册为JMX MBean
  • bean管理接口的灵活控制机制
  • 可以通过JSR-160连接器将声明的MBeans暴露给远程
  • 远程和本地MBean资源的简单代理

这个功能的设计是应用程序组件在和Spring或JMX接口和类无需耦合的方式工作。事实上,在大多数情况下应用程序为了使用Spring JMX的特性,也不会去关心Spring或者JMX。

阅读全文

《Kafka官方文档》实现

1. API Design

Producer APIs

Producer API封装了底层两个Producer:

  • kafka.producer.SyncProducer
  • kafka.producer.async.AsyncProducer

阅读全文

《Maven官方指南》30分钟入门

原文链接     译者:carvendy

Maven 入门指南

这个指南预期是作为使用第一次使用Maven工作的,但是也预期服务作为一个单独的引用和常用的解决方案用例。对第一次的用户,这推荐你按顺序一步一步来看材料。对于熟悉Maven的用户,指南努力地提供需要的快速方案。假设你已经下载了Maven和安装好Maven在你本地机器。如果你这样做请参考下载与安装的指令。

好,你现在已经安装好Maven了和我们准备开始。在我们今天例子之前,我们将简要过一遍什么是Maven和它能怎么帮助你处理日常工作并和你团队成员一起协助。Maven将,当然,为了小项目工作,但是Maven表现突出在帮助团队有效操作并允许团队成员着眼于项目需要什么相关者。你可以把构建的事项交给Maven。

阅读全文

return top