org.do?parentId=2这是一个连接
public class OrgActionForm extends ActionForm {
private int parentId; public int getParentId() {
return parentId;
} public void setParentId(int parentId) {
this.parentId = parentId;
}
}
为什么parentId是怎样写进orgActionform的?为什么没有request.getParameter()就能取出parentid的值?谁能说说原理?

解决方案 »

  1.   

    这就是框架的封装功能...
    在提交jsp时,Struts自动将jsp中的属性进行匹配ActionForm中的属性,匹配成功则将值set到对应的属性中,然后进入Action中,由于OrgActionForm中已经封装了属性值,所以根据参数ActionForm强制转换成OrgActionForm即可得到提交的属性值。
      

  2.   

    public int getParentId() { 
    return parentId; 
    } public void setParentId(int parentId) { 
    this.parentId = parentId; 
      

  3.   

    ActionForm 基类基类先在jsp页面加载的时候
    构建了parentId对象
    当action提交的时候,action把从request里面获得request.getParameter("parentId")
    然后赋值给actionForm的对象。实现了数据的传送
      

  4.   

    action就是从页面获取值,然后传递数据。
      

  5.   

    1楼说的比较对,不过你要是想完全弄懂其中是怎么实现的
    你可以去研究一下源代码,弄懂是怎么实现的
    我是看尚学堂王勇的struts1视频,里面分析了struts1的源代码
    楼主有时间的话可以去看看!