有两个函数
public ActionForward addrow(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws Exception
{
MainForm mainForm = (MainForm)form;
String addRowIndex = DataGridUtils.getRowSelected(request, "tblAddr") ;
SupplierCollectionCache cache = (SupplierCollectionCache)getCollectionCache(request);
ArrayList dtlList = (ArrayList)cache.getL3DataCache();
tblAddr_update(dtlList, mainForm);
SupplierPackingAddrVO vo = new SupplierPackingAddrVO();
vo.setCompany_id(this.getCompanyId(request));
vo.setAddress_id((String)mainForm.getFld_packing_addrId("-1"));
vo.setAddress((String)mainForm.getFld_packing_address("-1"));
vo.setSdms_id((String)mainForm.getFld_packing_sdmsId("-1"));
vo.setPacking_region_id((String)mainForm.getFld_packing_regionId("-1"));
vo.setProvince_id((String)mainForm.getFld_packing_provinceId("-1"));
vo.setProvince_name((String)mainForm.getFld_packing_provinceName("-1"));
vo.setCity_id((String)mainForm.getFld_packing_cityId("-1"));
vo.setCity_name((String)mainForm.getFld_packing_cityName("-1"));
vo.setDistrict_id((String)mainForm.getFld_packing_districtId("-1"));
vo.setDistrict_name((String)mainForm.getFld_packing_districtName("-1"));
vo.setTown_id((String)mainForm.getFld_packing_townId("-1"));
vo.setTown_name((String)mainForm.getFld_packing_townName("-1"));
vo.setRef_no((String)mainForm.getFld_packing_ref_no("-1"));
dtlList.add(vo);
loadL3DataCache(mapping, form, request, response);
this.setGoAnchor(request, "tbl_addr_anchor_add");
this.setInitFocus(request, "document.forms[0].item(\"fld_packing_addrId(-1)\")");
initMainForm(mapping, form, request, response);
return mapping.getInputForward();
}
public void tblAddr_update(ArrayList dtlList, MainForm mainForm){
int size = Integer.parseInt(mainForm.getTblAddrSize());
for (int i=0; i <size; i++)
{
SupplierPackingAddrVO vo = (SupplierPackingAddrVO)dtlList.get(i);
vo.setAddress_id((String)mainForm.getFld_packing_addrId(String.valueOf(i)));
vo.setAddress((String)mainForm.getFld_packing_address(String.valueOf(i)));
vo.setSdms_id((String)mainForm.getFld_packing_sdmsId(String.valueOf(i)));
vo.setPacking_region_id((String)mainForm.getFld_packing_regionId(String.valueOf(i)));
vo.setProvince_id((String)mainForm.getFld_packing_provinceId(String.valueOf(i)));
vo.setProvince_name((String)mainForm.getFld_packing_provinceName(String.valueOf(i)));
vo.setCity_id((String)mainForm.getFld_packing_cityId(String.valueOf(i)));
vo.setCity_name((String)mainForm.getFld_packing_cityName(String.valueOf(i)));
vo.setDistrict_id((String)mainForm.getFld_packing_districtId(String.valueOf(i)));
vo.setDistrict_name((String)mainForm.getFld_packing_districtName(String.valueOf(i)));
vo.setTown_id((String)mainForm.getFld_packing_townId(String.valueOf(i)));
vo.setTown_name((String)mainForm.getFld_packing_townName(String.valueOf(i))); vo.setRef_no((String)mainForm.getFld_packing_ref_no(String.valueOf(i)));
}
}
我想知道第一个函数中的tblAddr_update(dtlList, mainForm);
是怎样更新到其中的dtlList是传地址吗?
public ActionForward addrow(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws Exception
{
MainForm mainForm = (MainForm)form;
String addRowIndex = DataGridUtils.getRowSelected(request, "tblAddr") ;
SupplierCollectionCache cache = (SupplierCollectionCache)getCollectionCache(request);
ArrayList dtlList = (ArrayList)cache.getL3DataCache();
tblAddr_update(dtlList, mainForm);
SupplierPackingAddrVO vo = new SupplierPackingAddrVO();
vo.setCompany_id(this.getCompanyId(request));
vo.setAddress_id((String)mainForm.getFld_packing_addrId("-1"));
vo.setAddress((String)mainForm.getFld_packing_address("-1"));
vo.setSdms_id((String)mainForm.getFld_packing_sdmsId("-1"));
vo.setPacking_region_id((String)mainForm.getFld_packing_regionId("-1"));
vo.setProvince_id((String)mainForm.getFld_packing_provinceId("-1"));
vo.setProvince_name((String)mainForm.getFld_packing_provinceName("-1"));
vo.setCity_id((String)mainForm.getFld_packing_cityId("-1"));
vo.setCity_name((String)mainForm.getFld_packing_cityName("-1"));
vo.setDistrict_id((String)mainForm.getFld_packing_districtId("-1"));
vo.setDistrict_name((String)mainForm.getFld_packing_districtName("-1"));
vo.setTown_id((String)mainForm.getFld_packing_townId("-1"));
vo.setTown_name((String)mainForm.getFld_packing_townName("-1"));
vo.setRef_no((String)mainForm.getFld_packing_ref_no("-1"));
dtlList.add(vo);
loadL3DataCache(mapping, form, request, response);
this.setGoAnchor(request, "tbl_addr_anchor_add");
this.setInitFocus(request, "document.forms[0].item(\"fld_packing_addrId(-1)\")");
initMainForm(mapping, form, request, response);
return mapping.getInputForward();
}
public void tblAddr_update(ArrayList dtlList, MainForm mainForm){
int size = Integer.parseInt(mainForm.getTblAddrSize());
for (int i=0; i <size; i++)
{
SupplierPackingAddrVO vo = (SupplierPackingAddrVO)dtlList.get(i);
vo.setAddress_id((String)mainForm.getFld_packing_addrId(String.valueOf(i)));
vo.setAddress((String)mainForm.getFld_packing_address(String.valueOf(i)));
vo.setSdms_id((String)mainForm.getFld_packing_sdmsId(String.valueOf(i)));
vo.setPacking_region_id((String)mainForm.getFld_packing_regionId(String.valueOf(i)));
vo.setProvince_id((String)mainForm.getFld_packing_provinceId(String.valueOf(i)));
vo.setProvince_name((String)mainForm.getFld_packing_provinceName(String.valueOf(i)));
vo.setCity_id((String)mainForm.getFld_packing_cityId(String.valueOf(i)));
vo.setCity_name((String)mainForm.getFld_packing_cityName(String.valueOf(i)));
vo.setDistrict_id((String)mainForm.getFld_packing_districtId(String.valueOf(i)));
vo.setDistrict_name((String)mainForm.getFld_packing_districtName(String.valueOf(i)));
vo.setTown_id((String)mainForm.getFld_packing_townId(String.valueOf(i)));
vo.setTown_name((String)mainForm.getFld_packing_townName(String.valueOf(i))); vo.setRef_no((String)mainForm.getFld_packing_ref_no(String.valueOf(i)));
}
}
我想知道第一个函数中的tblAddr_update(dtlList, mainForm);
是怎样更新到其中的dtlList是传地址吗?
解决方案 »
- ---------SSH框架求助,Hibernate存储中文问题------
- J2EE框架报错,我已经改了,可为什么还报一样的错?
- 求JSP+struts2+SQLServer 分页源代码?
- 网页怎样展示和制作流程图?
- t3://localhost:7001 ,t3是什么意思?在线等
- Tomcat两百个用户同时跑,出现out of memory
- 一个关于RESULTSET的问题,我困惑了好久,请释疑!
- 请教关于jdbc查询的问题
- 注册用户信息 需要短信验证
- JRE Oracle Corporation/12 is not supported, advanced source lookup disabled.
- hibernate一对多条件查询问题
- request.getParameter无法获取中文
◎ 如果参数是个基础类型(int之类),那么就是数值本身;
◎ 如果参数是个对象类型(String等),那么传递的值,是指该对象的地址。
1.基本类型。值传递,就是赋值,把变量的值赋给函数的参数。
2.对象类型。引用,变量和函数的参数都引用的同一个对象。
在引用的情况下,在函数里面修改了参数的值,就等同于修改了原对象。
简单的例子:
public void func()
{
/*比如说MyObject有一个成员变量叫value,int类型*/
MyObject origin = new MyObject();
origin.setValue(5);
System.out.println("value is " + origin.getValue());//value is 5
MyObject ref = origin;//变量ref得到原对象origin的引用
ref.setValue(3);
System.out.println("value is " + origin.getValue());//value is 3
/*作为函数参数的情况亦如此*/
}