- 浏览: 98097 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (55)
- java (12)
- mysql (2)
- hibernate (3)
- servlet (1)
- spring (4)
- eclipse (2)
- html (2)
- ajax (1)
- windows (1)
- jsf (3)
- seam (4)
- jboss (2)
- js (3)
- struts2.1 (1)
- ajax4jsf (1)
- groovy (2)
- javascript (1)
- linux下图片处理工具ImageMagick使用方法 (1)
- primefaces (2)
- tomcat (1)
- rsa (1)
- spring @Async使用 (1)
- httpclient (3)
- jsoup (1)
- css (2)
最新评论
-
copier8:
我也搞定了!
项目中的业务流程要发送短信,短信乱码的问题! -
greatwqs:
我的eclipse下没有Help->Software U ...
安装 Groovy的Eclipse插件 -
tianshi0253:
我也遇到这个问题了。还没找到解决方案呢...
Js中parseFloat()方法所产生的精度问题 -
yanjunshi:
谢谢,总算解决了。
项目中的业务流程要发送短信,短信乱码的问题! -
yangke250:
全部用utf-8绝对五乱码问题
mysql以及页面无法正常显示中文
关键字: Annotation
自定义Annotation类型:标识符(marker Annotation):@interface
Annotation的使用:可以放在任何地方,如类的前面,方法的前面,变量、属性的前面等等。
Annotation的定义:
在定义Annotation型态的时候不能继承其它的Annotation型态或接口
1、不带参数的定义与使用
java 代码
1. package com.test;
2.
3. public @interface AnnotationTest {
4.
5. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
2、带一个参数的定义与使用,请注意:
如果定义的参数是"value"这个字符串,那么在使用时可以这样写:@AnnotationTest("hello")也可以这样写: @AnnotationTest(value = "hello"),如果定义的参数不是"value"这个字符串,那么在使用的时候必须显式赋值,也就是必须用@AnnotationTest (value = "hello") 这样的模式,如String value1(); 那么对应的是@AnnotationTest(value1 = "hello") 因为value是个默认的,所以在使用是可以显式也可以隐式
java 代码
1. package com.test;
2.
3. public @interface AnnotationTest {
4. String value();
5. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest("hello")
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
3、带多个参数的定义与使用,请注意:
带多个参数的话,定义的时候用的是数组,使用的时候,可以是作为单个的也可以作为数组的形式
java 代码
1. package com.test;
2.
3. public @interface AnnotationTest {
4. String[] value();
5. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest("hello")
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest({"hello"})
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest({"hello","world"})
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest(value = {"hello","world"})
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
4、定义默认值的使用
java 代码
1. package com.test;
2.
3. public @interface AnnotationTest {
4. String value() default "yahaitt";
5. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest("hello")
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public @interface AnnotationTest {
4. String value1() default "ttitfly";
5. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest(value1 = "hello")
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
4、枚举在Annotation中的使用
java 代码
1. package com.test;
2.
3. public @interface AnnotationTest {
4. EnumTest value1();
5. }
6.
7. enum EnumTest
8. {
9. Hello,Yahaitt,Ttitfly
10. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest(value1 = EnumTest.Hello)
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public @interface AnnotationTest {
4. EnumTest value1() default EnumTest.Yahaitt;
5. }
6.
7. enum EnumTest
8. {
9. Hello,Yahaitt,Ttitfly
10. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest(value1 = EnumTest.Hello)
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
http://yahaitt.iteye.com/blog/144418
自定义Annotation类型:标识符(marker Annotation):@interface
Annotation的使用:可以放在任何地方,如类的前面,方法的前面,变量、属性的前面等等。
Annotation的定义:
在定义Annotation型态的时候不能继承其它的Annotation型态或接口
1、不带参数的定义与使用
java 代码
1. package com.test;
2.
3. public @interface AnnotationTest {
4.
5. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
2、带一个参数的定义与使用,请注意:
如果定义的参数是"value"这个字符串,那么在使用时可以这样写:@AnnotationTest("hello")也可以这样写: @AnnotationTest(value = "hello"),如果定义的参数不是"value"这个字符串,那么在使用的时候必须显式赋值,也就是必须用@AnnotationTest (value = "hello") 这样的模式,如String value1(); 那么对应的是@AnnotationTest(value1 = "hello") 因为value是个默认的,所以在使用是可以显式也可以隐式
java 代码
1. package com.test;
2.
3. public @interface AnnotationTest {
4. String value();
5. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest("hello")
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
3、带多个参数的定义与使用,请注意:
带多个参数的话,定义的时候用的是数组,使用的时候,可以是作为单个的也可以作为数组的形式
java 代码
1. package com.test;
2.
3. public @interface AnnotationTest {
4. String[] value();
5. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest("hello")
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest({"hello"})
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest({"hello","world"})
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest(value = {"hello","world"})
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
4、定义默认值的使用
java 代码
1. package com.test;
2.
3. public @interface AnnotationTest {
4. String value() default "yahaitt";
5. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest("hello")
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public @interface AnnotationTest {
4. String value1() default "ttitfly";
5. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest(value1 = "hello")
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
4、枚举在Annotation中的使用
java 代码
1. package com.test;
2.
3. public @interface AnnotationTest {
4. EnumTest value1();
5. }
6.
7. enum EnumTest
8. {
9. Hello,Yahaitt,Ttitfly
10. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest(value1 = EnumTest.Hello)
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public @interface AnnotationTest {
4. EnumTest value1() default EnumTest.Yahaitt;
5. }
6.
7. enum EnumTest
8. {
9. Hello,Yahaitt,Ttitfly
10. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
java 代码
1. package com.test;
2.
3. public class AnnotationUsage {
4. @AnnotationTest(value1 = EnumTest.Hello)
5. public void method()
6. {
7. System.out.println("usage of annotation");
8. }
9. public static void main(String[] args)
10. {
11. AnnotationUsage au = new AnnotationUsage();
12. au.method();
13. }
14. }
http://yahaitt.iteye.com/blog/144418
发表评论
-
spring mvc3中的addFlashAttribute方法
2013-02-16 11:29 0http://jackyrong.iteye.com/blog ... -
获取远程IP地址
2013-02-07 16:22 953String getIpAddr(HttpServletReq ... -
get请求 指定字符集
2012-06-12 15:05 679http get的时候,指定url字符集 tomcat 在 ... -
linux
2011-12-12 12:36 841linux下图片处理工具Image ... -
mysql 按年度、季度、月度、周、日SQL统计查询
2011-10-31 14:09 1267该死的mysql没有提供unix时间戳的专门处理函数,所以,如 ... -
两日期之间的天数
2010-05-27 14:28 878public int getBetweenDays(Date ... -
利用map的value进行排序
2009-05-21 13:00 12962009-03-19 playfish (架构师) map内 ... -
java中对象和xml之间的转换
2008-12-18 09:43 1937项目中需要生成和解析XML的地方越来越多了。JAXB是把jav ... -
计算两个日期之间相差的月数和天数
2008-10-21 14:36 3160public class DateUtils { publi ... -
金额小写到大写的转变
2008-06-23 14:02 932package com.liba.link; public ... -
在seam中利用itext生成pdf 遇到中文问题
2008-04-15 14:45 1421我在项目中定义了一个contractPDF.xhtml文件,代 ... -
修改集合中的元素引起的异常
2007-12-12 16:03 1443今天在做项目时,遇到一个问题,先以解决,在这里吼一下,不要犯我 ...
相关推荐
自定义控件是C#编程中一个重要的概念,它允许开发者根据需求扩展或修改内置控件的功能和外观,以满足特定项目的需求。在本案例中,我们将深入探讨如何自定义ComboBox控件。 ComboBox控件是Windows Forms中一个非常...
本篇文章将深入探讨如何定义和优化自定义模块,以及处理自定义事件。 首先,理解FreeSwitch模块的生命周期是至关重要的。一个模块通常包括加载、初始化、运行和卸载四个阶段。在加载阶段,模块被FreeSwitch核心加载...
"C#自定义控件库"是指使用C#语言编写的、由开发者自定义的控件集合,这些控件可以扩展.NET Framework的标准控件集,为用户提供更丰富的界面元素和功能。自定义控件是软件开发中的一个重要环节,特别是在UI设计和用户...
本篇将深入探讨如何自定义FreeMarker标签,以扩展其功能并适应特定项目需求。 首先,理解FreeMarker的默认标签语法至关重要。FreeMarker使用${...}表达式来插入变量,#{...}用于输出注释,以及、等控制结构进行条件...
本教程将深入讲解如何在WinForms中自定义CheckBox控件,以满足特定的界面或功能需求。 首先,自定义CheckBox控件主要是为了扩展其默认功能,比如改变其外观、添加额外的事件处理或者提供更复杂的交互逻辑。在VS2005...
鸿蒙自定义组件实例鸿蒙自定义组件实例鸿蒙自定义组件实例鸿蒙自定义组件实例鸿蒙自定义组件实例鸿蒙自定义组件实例鸿蒙自定义组件实例鸿蒙自定义组件实例鸿蒙自定义组件实例鸿蒙自定义组件实例鸿蒙自定义组件实例...
在.NET Framework中,C#提供了一个强大的平台来创建自定义组件和控件,这使得开发者可以扩展.NET Framework的基础功能,实现特定的需求。本项目聚焦于C#中的自定义组件和控件开发,涵盖了一些常见的实用功能,如速选...
在Android开发中,有时我们可能需要对系统的默认控件进行扩展和自定义,以满足特定的设计需求或功能增强。本文将深入探讨如何自定义`RadioGroup`布局,并通过修改源码来创建一个自定义控件。`RadioGroup`是Android...
本主题将深入探讨如何在Spring Boot工程中通过自定义response注解、利用Java反射机制、设置自定义拦截器以及实现WebMvcConfigurer接口来实现这一目标。 首先,我们来看自定义response注解。在Spring Boot中,可以...
本话题将深入探讨如何实现UITableViewCell的自定义,特别是实现等高的自定义。 一、UITableViewCell自定义基础 自定义UITableViewCell主要涉及以下几个方面: 1. 创建UITableViewCell子类:通过继承...
因此,开发者经常需要自定义日期选择器来提供更符合应用风格或特定功能的交互体验。这篇内容将深入探讨如何在Android中创建一个自定义日期选择器,并通过源码分析来增强我们的理解。 首先,我们要明白自定义日期...
在Android开发中,自定义View和自定义属性是提升应用个性化和功能扩展性的重要手段。本文将深入探讨这两个核心概念,以及如何在实际项目中应用它们。 ### 自定义View 自定义View允许开发者创建自己的视图组件,以...
这个自定义键盘的实现主要涉及到UIKeyboardType的扩展以及自定义UIView的使用。 首先,我们了解iOS系统键盘的默认类型。iOS提供了多种键盘类型,如UIKeyboardTypeASCIICapable、UIKeyboardTypeNumberPad等。其中,...
在AutoCAD平台上,开发者可以利用ObjectARX(Autodesk Reactor Extension)库来创建自定义实体,这是一种基于C++的编程接口,允许程序员深入到AutoCAD的内部工作流程,实现扩展功能和定制化操作。本篇文章将详细探讨...
在Android开发中,自定义组件是一项重要的技能,它允许开发者根据特定需求打造独特的用户界面。本主题主要关注如何在自定义的LinearLayout中嵌入自定义的View,并利用GridView来有效地组织这些视图。 首先,我们要...
在C# WinForm应用开发中,自定义RadioButton控件是一种常见的需求,这通常涉及到扩展.NET Framework提供的默认RadioButton控件的功能,以满足特定的设计或交互需求。本教程将深入讲解如何在Visual Studio 2005及其更...
本篇文章将详细探讨如何在Qt中实现一个自定义的提示框(Tip),即“自定义tip”。 首先,我们要理解“tooltip”在UI设计中的作用。Tooltip是当鼠标悬停在某个控件上时,会短暂显示的一段文字信息,用于提供关于该控件...
在开发这些应用程序时,有时我们需要根据项目需求创建特定的用户界面元素,这正是自定义控件的作用所在。本主题将深入探讨如何在C#中自定义一个类似于系统默认`MessageBox`的控件。 `MessageBox`是.NET Framework...
在Microsoft Foundation Classes (MFC)库中,开发者可以利用自定义消息和自定义类来扩展框架的功能,以满足特定项目的需求。自定义消息是Windows消息系统的一部分,允许程序员定义自己的消息类型,而自定义类则提供...
本篇文章将深入探讨如何使用QTreeView,并结合自定义Model来实现更灵活的数据展现。 首先,理解QTreeView的工作原理至关重要。QTreeView本身并不存储数据,它只是视图部分,负责呈现数据。数据由Model提供,Model是...