Parameter[] ps = method.getParameters();
Map<String,Integer> map = new HashMap<String,Integer>();
for(int ij = 0;ij<ps.length;ij++){
Parameter p = ps[ij];
RequestParam rp = p.getAnnotation(RequestParam.class);
if(rp != null){
//do something
}else {
System.out.println(p.getType());
System.out.println(p.getType().isInstance(HttpServletRequest.class));
System.out.println(p.getType() == HttpServletRequest.class);
}
}
der Ausgang ist:warum parameter.getType() isinstance (HttpServletRequest.class) return ist falsch, aber verwenden "==" true ist
interface javax.servlet.http.HttpServletRequest
false
true
warum die "isinstance" verwenden, ist falsch und benutze "==" ist wahr? weil die "Instanz von" kann die Beziehung zwischen den Geräten nicht beurteilen?