java annotations: library to override annotations

2019-03-18 11:58发布

Java has annotations and that is good. However, some developers feel that it is best to annotate code with metadata using xml files - others prefer annotations but would use metadata to override annotations in source code.

I am writing a Java framework that uses annotations. The question is: is there a standard way to define and parse metadata from xml files. I think this is something every framework that uses annotations could benefit from but I can seem to find something like this on the Internet.

Must I roll my own xml parsing/validation or has someone already done something like this?

4条回答
The star\"
2楼-- · 2019-03-18 12:22

Use JAXB http://java.sun.com/developer/technicalArticles/WebServices/jaxb/ You would write the xsd for your metadata file, generate JAXB classes that can help you parse the xml files.

查看更多
该账号已被封号
3楼-- · 2019-03-18 12:27

I wrote the Annox library which does exactly what you need. With Annox you can read arbitrary annotations from XML.

查看更多
forever°为你锁心
4楼-- · 2019-03-18 12:27

It's not exactly what you want, but the backport175 project has an implementation of annotations for Java versions before Java 5.

It has some of the functionality you search in that it will read both its own style implementations and "real" annotations if they are present. Maybe this can be used as a starting point to build a more general framework.

查看更多
该账号已被封号
5楼-- · 2019-03-18 12:30

There is not a standard way, but here are some Java frameworks who does it:

  • JPA - check ejb-3_0-fr-spec-persistence.pdf
  • Spring Framework
  • TestNG - as written above, though I think it focuses to much on the annotation side rather than the actual configuration he tries to achieve
  • Seam Framework
查看更多
登录 后发表回答