SpringMVC注解的方式编写控制层逻辑,可以省略框架原有的事件、功能处理机制(event、handler)。
使用框架原有事件、功能机制时,代码较为零散,配置过多。
package com.kingdee.eas.custom.demo.demo.web; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import com.kingdee.bos.webframework.core.WebPageController; import com.kingdee.bos.webframework.json.JSONUtils; /** * 演示单据编辑界面控制层逻辑 * @author 郭旭 * */ @Controller @RequestMapping("/demo/demoEdit") public class DemoEditPageController extends WebPageController { /** * 演示接口 */ @RequestMapping(params={"method=demo"}) @ResponseBody public void demo(HttpServletRequest request, HttpServletResponse response, ModelMap model) throws Exception{ String demo = request.getParameter("demo"); //参数 JSONUtils.SUCCESS(demo); } }
前端页面JS调用控制层对应方法:
/** * 演示按钮 */ demo:function(event,value){ var number = waf("#number").wafText("getValue") //单据编号 if(number == null || number == ""){ _self.showMessage("单据编号不能为空!"); return; } waf.ajax({ url:waf.getContextPath() + "/demo/demoEdit.do?method=demo", data:{demo:number}, //传参 type:'post', dataType:'', async:false, success:function(data){ alert(data.data); // alert(waf.toJSON(data)); } }); }