我开始使用Javadocs来记录我的Java代码,虽然我非常喜欢这个想法,但我遇到了一些麻烦。基本上有两个单独的项目,WEB项目,带有html页面和servlet,以及EJB项目,带有bean和接口。 Bean的界面像.jar简介WEB项目一样导出,因此servlet可以用JNDI查找并调用bean的方法。
问题:
1)为什么我不能在bean实现的接口中看到javadoc注释?例:
@Remote
public interface BeanRemote{
//CAN'T SEE JAVADOC HERE
public String tuna(String fish);
}
@Stateless
public class Bean implements BeanRemote{
/**
This is very nice function
*/
public String tuna(String fish){
return "this is"+fish;
}
public void printStuff(){
//CAN SEE JAVADOC HERE
String stuff = tuna("big tuna");
System.out.println(stuff);
}
}
2)是否有可能从WEB项目的servlet中看到javadoc注释,如果它有.jar的接口,而实际的javadoc注释在bean中?
提前致谢。
编辑:
两个项目的简化结构:
WEB:
webProject
JavaResources
src
servlets
//Can't see Javadoc here
BeanServlet.java
WebContent
WEB-INF
lib
//This is interface on the bean from BEAN project
BeanRemote.jar
BEAN:
beanProject
ejbModule
beans
//Javadoc is here
Bean.java
remote
//Can't see Javadoc here
//This is exported into WEB project
BeanRemote.java
答案 0 :(得分:1)
由于您正在引用Web项目中的接口,因此您的Javadoc应放在接口方法中。
如果您的实现方法需要更具体的文档,您还可以从接口继承Javadoc并添加细节。只需在Javadoc块中使用{@inheritDoc}
。
示例:
/**
* {@inheritDoc}
* <p>
* For this specific implementation of the interface, you're better off
* calling the more efficient {@link foo} method, provided you have the
* additional arguments!
* </p>
*/
@Override
public void methodX() {
// Your code here
}
请记住,只有在您明确引用此类时才会显示特定文档。
BeanRemote bean = new Bean();
当您将鼠标光标放在BeanRemote
上时,它会显示来自BeanRemote
的文档,而当您将其放在Bean
上时,它会显示特定的文档。