title: How to give property placeholder support for java custom annotation
body: <p>I have created a custom Java annotation and has certain attributes. How can I support the property placeholder for string attributes ?</p>
  
  <p>Eg:</p>
  
  <pre><code>Retention(RetentionPolicy.RUNTIME)
  @Target(ElementType.METHOD)
  public @interface PublishEvent {
  
      public EventStore eventStore();
      public boolean isPersistent() default false;
      public String channelName();
  
  
  }
  </code></pre>
  
  <p>I want to use as : </p>
  
  <pre><code>@PublishEvent(channelName="${rabbit.event.default}")
  public void someMethod(){}
  </code></pre>
  
  <p>where <strong>rabbit.event.default</strong> is a key for a property defined in application.properties file. I want to have the property key replaced with value as in the case of @Value annotations of spring.</p>
  
  <p>I am using Spring AOP to intercept the annotation and do processing. </p>