Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #8223

Re: How do I figure out what class method is annotated with @Id?

From Daniel Pitts <newsgroup.nospam@virtualinfinity.net>
Newsgroups comp.lang.java.programmer
Subject Re: How do I figure out what class method is annotated with @Id?
References <46e27630-0633-49fb-975b-a4e78d787655@v7g2000yqk.googlegroups.com> <s8Oeq.47452$OO1.764@newsfe02.iad> <j5gcuk$ke4$1@dont-email.me>
Message-ID <ggPeq.10314$7E2.5162@newsfe08.iad> (permalink)
Date 2011-09-22 16:11 -0700

Show all headers | View raw


On 9/22/11 3:30 PM, markspace wrote:
> On 9/22/2011 2:54 PM, Daniel Pitts wrote:
>
>> On 9/22/11 11:42 AM, laredotornado wrote:
>>> Given a java.lang.Class, how do I figure out what method is
>>> annotated with the "@Id" annotation? Thanks, - Dave
>
>>
>> Use Class.getDeclaredMethods and Method.isAnnotationPresent
>
>
> I'd prefer Class.getMethods. getDeclaredMethods won't look at inherited
> methods, which is not normally what you want.
>
> And you can skip isAnnotationPresent and just go for getAnnotations. It
> returns a 0 length array if no annotations are present. Your loop
> iterator should catch that by default, no need for additional checks or
> logic in the driving code.
>
>
>

I've used getDeclaredMethods to catch non-public methods. getMethods() 
only returns public methods.

You would have to "walk up" the super-class tree (I suppose getMethods() 
on an interface is good enough since there are no non-public methods 
except perhaps synthetics?

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Find similar


Thread

How do I figure out what class method is annotated with @Id? laredotornado <laredotornado@zipmail.com> - 2011-09-22 11:42 -0700
  Re: How do I figure out what class method is annotated with @Id? markspace <-@.> - 2011-09-22 11:49 -0700
  Re: How do I figure out what class method is annotated with @Id? Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2011-09-22 14:54 -0700
    Re: How do I figure out what class method is annotated with @Id? markspace <-@.> - 2011-09-22 15:30 -0700
      Re: How do I figure out what class method is annotated with @Id? Daniel Pitts <newsgroup.nospam@virtualinfinity.net> - 2011-09-22 16:11 -0700

csiph-web