• 付款单的保存


    该工程的功能是保存一个付款单,工程的起始页面是index.jsp ;

    中心思想:

    1.页面有三个部分:fkd1(付款单台头);fkd2(付款单明细1,账户明细信息);fkd3(应付单据信息);

    2.建立实体类PayHttpEntity来接收页面的信息(这个类的数据属性要和页面传回来的属性名称一致,这样通过ModelDriven才可以接受到数据):

    public class PayHttpEntity implements Serializable{

          //数据

           private String formData;

           private String tableDataOne;

           private String tableDataTwo;

          …

    };

       3.页面通过ajax发送数据

    {"formData":formData,"tableDataOne":tableDataOne,"tableDataTwo":tableDataTwo,deleteTableOneIds:deleteTableOneIds.join(","),deleteTableTwoIds:deleteTableTwoIds.join(",")}

    到payAction!saveOrUpdate.action;

       4.payAction 是个自定义Action类:public class PayAction extends BaseStruts2Action implements ModelDriven<PayHttpEntity>,通过ModelDriven直接把数据填充到PayHttpEntity对象中。

    5.类PayHttpEntity

    private PayHttpEntity model=new PayHttpEntity();

    public PayHttpEntity getModel() {

                  return model;

           }

    完成了页面把数据传送到了后台

    6.页面调用Action的方法saveOrUpdate()(隐藏自动的完成步骤5):

      

    类PayHttpEntity 调用public void saveOrUpdate(){

                  String result=payService.save(model);  //调用业务层的实现类存储model

                        if (Constant.RESULT_SUCCESS.equals(result)) {

                               JsonUtil.result(true, "操作成功!");

                        }else{

                            JsonUtil.result(false, result);

                        }

          }

        

    7.调用payService.save(model)函数:

    String bh=saveForm(model);

    // 通过FastJson的JSON.parseObject函数把json字符串赋值给对应//的类

          if (!ValidationUtil.validationEmpty(bh)) {

             //table1

          saveTableOne(model,bh);// 把json串转化为list,给每条记录//赋bh的值,然后保存

             //table2

             saveTableTwo(model,bh);

             return Constant.RESULT_SUCCESS;

          }else{

             return "数据异常!";

          }

       至此完成付款单的保存。

  • 相关阅读:
    Setvlet基础(三) ServletContext
    Servlet基础(二) Servlet的生命周期
    Servlet基础(一) Servlet简介 关键API介绍及结合源码讲解
    JS执行队列
    this指向问题
    发送短信案例
    倒计时
    2:定时器
    1_2:调整窗口大小事件 [ onresize ]
    1_1:页面加载事件 [ window.onload ]
  • 原文地址:https://www.cnblogs.com/zhangxj/p/4064104.html
Copyright © 2020-2023  润新知