javabean的一个概念性问题
大家好,小弟初学java.今天学javabean时有个地方想不太明白:
例如,jsp页面中有句<jsp:setProperty name="myBean" property="age" value="12" />给MyBean中的age赋值。
MyBean中有属性(字段) private int age; 和setter: public void setAge(int age){...}
不知jsp中property="age"是如何找到MyBean中的setter的.难道仅仅是根据age然后在其之前加入set吗?
我做了个实验,把setter改成:
public void setAge(String age) { //参数改成String类型
try {
this.age = Integer.parseInt(age);
} catch (NumberFormatException e) {
e.printStackTrace();
}
}
程序运行不到该setter,说明jsp中调用setter还要判断类型,也就是要根据整个方法签名?
但private int age;该属性是私有的,jsp是如何知道age的类型的?难道是通过反射?
请大家不吝赐教,谢谢