内省--注解

内省 Introspector// Java内置的获取类的成员变量的set.get方法的一个类.
Introspector.getBeanInfo ()
beanInfo.getPropertyDescriptors()获得所有的属性描述数组.
for(Property p:Property[])可以获得每一个PropertyDescriptor对象.
PropertyDescriptor.getWriteMethod()获得set方法.
PropertyDescriptor.getReadMethod()获得get方法.
getName() /getPropertyType()

案例:将一个类的对象的public的成员属性.输出到某一个地址然后以txt文件保存  writeToFile(Object obj, String file)//

然后 用这个File文件将属性读出来创建一个对象包含了File里面的属性.

这里面设计到两个方法 1)当属性描述与名字一样时把方法取出来.... 2) 将 String 或者其他的数据类型 转换成 属性描述的数据类型.

注解是什么 ? Annotation .注解也是一个类.主要起辅助作用.说明配置.

@Override 重写/覆盖 父类的方法.
@Deprecated 不推荐使用.
@SuppressWarnings 不发出警告
自定义注解.三个存储地址 SOURCE(源代码)/CLASS/RUNTIME(.class)
起作用的不是注解而是后面解释注解的代码.

时间: 2024-08-24 14:13:38

内省--注解的相关文章

黑马程序员—类加载、内省、注解、代理

--Java培训.Android培训.iOS培训..Net培训.期待与您交流! --- 一.类加载器 类加载器用于加载Java的字节代码到Java虚拟机中,同时将配置文件等放在classpath目录下. 类加载器读取Java字节码文件并转换成Java.lang.Class类的一个实例,通过该实例的newInstance()方法可以创建该类对象(相当于调用空参数的构造方法).基本上所有的类加载器都是 java.lang.ClassLoader类的一个实例. ClassLoader getParen

内省、JavaBean、PropertyDescriptor类、Introspector类、BeanUtils工具包、注解、Rentention、Target、注解的基本属性和高级属性

内省.JavaBean.PropertyDescriptor类.Introspector类.BeanUtils工具包.注解.Rentention.Target.注解的基本属性和高级属性 本文转载自:http://blog.sina.com.cn/s/blog_5d65a16901011kom.html 关键字:内省.JavaBean.PropertyDescriptor类.Introspector类.BeanUtils工具包.注解.Rentention.Target.注解的基本属性和高级属性 内

高新技术---内省、注解、类加载器

第一讲     内省引出JavaBean 一.内省 1.内省对应的英文单词为IntroSpector,英文意思是检查.视察.体检之意,对于程序即对内部进行检查,了解更多的底层细节. 2.内省的作用:主要针对JavaBean进行操作. 二.JavaBean 1.简述: 1)JavaBean是一种特殊的Java类,主要用于传递数据信息,这种Java类中的方法主要用于访问私有的字段,且方法符合某种特殊的命名规则. 2)它是一种特殊的Java类,其中的方法符合特殊的规则.只要一个类中含有get或is和s

JDK1.5的新特性:javabean、注解类、类加载器

关于Java基础的文章,我觉得写得还可以,以前发在了我其它的博客了,肯定是原创,现在再分享给大家出来. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

使用注解校验参数

一:为什么使用注解 在项目开发中,参数的校验是不可避免的,通常情况下,我们会使用if条件判断,如果 前台传递很多参数过来,那么需要写很多累赘的if代码来校验参数,而使用注解可以避免 这个问题,注解需要依赖javaBean,在字段上我们可以绑定一些元数据,然后在校验的 使用使用,下面是一个简单的实例: 自定义注解:NotNull package com.annotation; import java.lang.annotation.Documented; import java.lang.anno

黑马程序员——java高新---注解、泛型等

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 一.注解 什么是注解? 答:对于过时的语句,java会提示过时了,通过@SuppressWarnings("Deprecation")可以在DOS命令行中取消提示,但Eclipse无法取消.这就是注解,相当于标记.编译器.开发工具.javac通过反射获得注解里的内容,进而明确应该做什么.不应该做什么.注解可以加在包.类.属性.方法.参数及局部变量之上.一个注解就是一个类. java.

黑马程序猿_反射、内省、泛型

------- android培训.java培训.期待与您交流! ---------- 反射:  反射就是把Java类中的各种成分映射成对应的java类. 构造方法的反射: onstructor类代表某个类中的一个构造方法. 得到某个类全部的构造方法: Constructor [] constructors=Class.forName("java.lang.String").getConstructors(); 得到某一个构造方法: Constructorconstructor=Cla

JAVA进阶-注解

注解元数据分为4部分分别为Target,Documented,Inherited,Retention: Target>指定被注解的注解仅仅能使用在某个类型上;ElementType指定其类型:能够为方法 字段,类,返回值等等; 声明: /** * @author Lean @date:2014-10-13 */ @Target(ElementType.METHOD) public @interface WorkInProgress {} 应用: /** * @author Lean @date:

mybatis注解详解

mybatis的原身是ibatis,现在已经脱离了apache基金会,新官网是http://www.mybatis.org/. mybatis3中增加了使用注解来配置Mapper的新特性,本篇文章主要介绍其中几个@Provider的使用方式,他们是:@SelectProvider.@UpdateProvider.@InsertProvider和@DeleteProvider. MyBatis 3 User Guide中的最后一章描述了注解的简单用法,但是对于这几个Provider的具体使用方式并