Java Annotation 高级应用

前言:
前不久在matrix上先后发表了《java annotation 入门》、《java annotation 手册》两篇文章,比较全面的对java annotation的语法、原理、使用三方面进行了阐述。由于《入门》中的简单例程虽然简单明了的说明了annotation用法,但给大家的感觉可能是意犹未见,所以在此行文《java annotation高级应用》,具体实例化解释annotation和annotation processing tool(APT)的使用。望能对各位的有所帮助。

一、摘要:
《java annotation高级应用》具体实例化解释annotation和annotation processing tool(APT)的使用。望能对各位的有所帮助。本文列举了用于演示annotation的BRFW演示框架、演示APT的apt代码实例,并对其进行较为深度的分析,希望大家多多提意见。

继续阅读

Java Annotation手册

前言:
在上篇文章《Java Annotation入门》中概要性的介绍了Annotation的定义、使用,范围涵盖较广,但是深度不够。所以作者在《Java Annotation入门》后,继续整理了Annotation的概念和知识点,与喜欢research的朋友们共享。

阅读提示:文中提到的程序成员或者程序元素是一个概念,指组成程序代码的单元:如类、方法、成员变量。

Java Annotation入门

摘要:
本 文针对java初学者或者annotation初次使用者全面地说明了annotation的使用方法、定义方式、分类。初学者可以通过以上的说明制作简 单的annotation程序,但是对于一些高级的annotation应用(例如使用自定义annotation生成javabean映射xml文件) 还需要进一步的研究和探讨。涉及到深入annotation的内容,作者将在后文《Java Annotation高级应用》中谈到。

同时,annotation运行存在两种方式:运行时、编译时。上文中讨论的都是在运行时的annotation应用,但在编译时的annotation应用还没有涉及,

继续阅读

Jodd 3.3 发布,Java常用工具包

Jodd 3.3发布了,该版本新增了一个Lagarto HTML解析器和Decora页面修饰器以及Jerry和一些小的改进。

Jodd是一个普通开源Java包。你可以把Jodd想象成Java的“瑞士军刀”,不仅小,锋利而且包含许多便利的功能。

Jodd提供的功能有:

1. 提供操作Java bean

2. 可以从各种数据源加载Bean

继续阅读

Azul发布开源工具jHiccup,为Java提供运行时响应时间分析

Azul System 公司于 12 月 13 日宣称发布了开源工具 jHiccup,设计该工具的目的是对与应用程序底层运行平台相关的暂停和延迟(或“hiccups”)做出度量。新工具的功能与 Azul 的 JitterMeter 有部分重叠,但它为创建图形化的输出增加了基于 Excel 的工具。另外它还计划增加基于 Java 用于生成图表的工具。此外,想要针对应用程序使用 jHiccup 也相当简单。你只需要在用来启动应用程序的 java -c命令之前增加 jHiccup 即可。

继续阅读

2011年最佳免费 PSD 用户界面素材揭晓

这是国外著名网页设计博客 WDL 发布的2011年最佳系列的第三篇,之前已经与大家分享了 2011年度最佳 jQuery 插件 以及 2011年度最佳免费英文字体。今天这篇文章,我们与大家一起分享这一年来优秀设计师们分享的及精美免费 PSD 用户界面素材,包含滑块、表单、按钮、菜单、进度条、播放器等等。这些免费的 PSD 素材资源对于网页设计师来说都非常有用,既能节省时间又能有很好的效果。记得分享和推荐一下哦 :)

Moonify UI

继续阅读

简明 Vim 练级攻略

vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的。下面的文章翻译自《Learn Vim Progressively》,我觉得这是给新手最好的VIM的升级教程了,没有列举所有的命令,只是列举了那些最有用的命令。非常不错。

——————————正文开始——————————

你想以最快的速度学习人类史上最好的文本编辑器VIM吗?你先得懂得如何在VIM幸存下来,然后一点一点地学习各种戏法。

Vim the Six Billion Dollar editor

Better, Stronger, Faster.

学习 vim 并且其会成为你最后一个使用的文本编辑器。没有比这个更好的文本编辑器了,非常地难学,但是却不可思议地好用。

我建议下面这四个步骤:

  1. 存活
  2. 感觉良好
  3. 觉得更好,更强,更快
  4. 使用VIM的超能力

当你走完这篇文章,你会成为一个vim的 superstar。

在开始学习以前,我需要给你一些警告:

  • 学习vim在开始时是痛苦的。
  • 需要时间
  • 需要不断地练习,就像你学习一个乐器一样。
  • 不要期望你能在3天内把vim练得比别的编辑器更有效率。
  • 事实上,你需要2周时间的苦练,而不是3天。

第一级 – 存活

  1. 安装 vim
  2. 启动 vim
  3. 什么也别干!请先阅读

当你安装好一个编辑器后,你一定会想在其中输入点什么东西,然后看看这个编辑器是什么样子。但vim不是这样的,请按照下面的命令操作:

  • 启 动Vim后,vim在 Normal 模式下。
  • 让我们进入 Insert 模式,请按下键 i 。(陈皓注:你会看到vim左下角有一个–insert–字样,表示,你可以以插入的方式输入了)
  • 此时,你可以输入文本了,就像你用“记事本”一样。
  • 如果你想返回 Normal 模式,请按 ESC 键。

现在,你知道如何在 Insert 和 Normal 模式下切换了。下面是一些命令,可以让你在 Normal 模式下幸存下来:

  • i → Insert 模式,按 ESC 回到 Normal 模式.
  • x → 删当前光标所在的一个字符。
  • :wq → 存盘 + 退出 (:w 存盘, :q 退出)   (陈皓注::w 后可以跟文件名)
  • dd → 删除当前行,并把删除的行存到剪贴板里
  • p → 粘贴剪贴板

推荐:

  • hjkl (强例推荐使用其移动光标,但不必需) →你也可以使用光标键 (←↓↑→). 注: j 就像下箭头。
  • :help <command> → 显示相关命令的帮助。你也可以就输入 :help 而不跟命令。(陈皓注:退出帮助需要输入:q)

继续阅读

开源跨浏览器 js复制剪切板组件:Zero Clipboard js+swf

开发中经常会用到复制的功能,在 IE 下实现比较简单。但要想做到跨浏览器比较困难了。本文将介绍一个跨浏览器的库类 Zero Clipboard 。它利用 Flash 进行复制,所以只要浏览器装有 Flash 就可以运行,而且比 IE 的 document.execCommand(“Copy”) 更加灵活。

Zero Clipboard 的实现原理
Zero Clipboard 利用 Flash 进行复制,之前有 Clipboard Copy 解决方案,其利用的是一个隐藏的 Flash。但最新的 Flash Player 10 只允许在 Flash 上进行操作才能启动剪贴板。所以 Zero Clipboard 对此进行了改进,用了一个透明的 Flash ,让其漂浮在按钮之上,这样其实点击的不是按钮而是 Flash ,也就可以使用 Flash 的复制功能了。

如何使用 Zero Clipboard
首先下载 Zero Clipboard (http://code.google.com/p/zeroclipboard/),并解压缩。其中需要两个文件:ZeroClipboard.js 和 ZeroClipboard.swf ,将这两个文件放入到你的项目中。
在页面引用JS文件:

<script type="text/javascript"src="ZeroClipboard.js"></script>

然后:

var clip =newZeroClipboard.Client();     //创建对象
clip.setHandCursor(true);                          // 设置鼠标手势为手型
clip.setText(“要复制的文本”);                    // 设置要复制的文本。
clip.glue(“button”);                                     // 注册复制按钮,参数为 id

演示地址:
http://demo.jb51.net/js/ZeroClipboard/index.html