版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
前后台数据交互目录前台提交数据后台数据处理后台传值前台dto方法dao方法常用工具类同步提交异步提交getJson文件上传setDatasetListsetSelectInputListsetMsg/setTopMsg前台提交数据同步提交异步提交getJson文件上传同步提交submitForm(formId,onSubmit,autoValidate,url,parameter)注意事项: 1.formId必须传 2.onSubmit中返回false则不进行提交,回调函数没有括号 3.同步提交在action中返回新的页面 4.默认自动校验 5.可以不传url,在form标签里写aciton属性 6.parameter中JSON数据格式,{"dto['字段']":"值"}异步提交submit(submitIds,url,parameter,onSubmit,autoValidate, succCallback,failCallback)注意事项: 1.onSubmit必须返回true/false,false时不提交 2.异步方法,在action中返回JSON自动处理 3.默认不校验,校验失败不提交getJsongetJson(url,parameter,callback,async)注意事项: 1.当action中有setData('','')返回时,无法直接给组件赋值,只能通过Data.field.字段来获取 2.action中可以有writeJsonToClient(obj)返回时,此对象为一个数组。 3.action中使用returnnull时必须有writeJsonToClient 4.saync控制同步还是异步提交,默认同步文件上传基础上传uploadify/fileupload文件上传1.效果图2.说明a.只能上传单个文件b.需要手动写输入输出流一.基础上传文件上传<ta:boxid="add"heightDiff="0"cssStyle="padding:10px"> <ta:boxid="file_id"cssClass="textCss"> <ta:textid="theFile"key="资源文件"type="file"name="theFile"required="true"/> </ta:box></ta:box>3.页面代码functionfnSaveAdd(){ vartheFile=$("#theFile").val(); if(Base.validateForm("form1")){ varparam={}; param["dto['filename']"]=theFile; Base.submitForm('form1',null,false, "fileupAction!uplode.do",param); }}文件上传4.后台代码publicStringuplode()throwsException{ ParamDTOdto=getDto(); Stringfilename=getDto().getAsString("filename"); StringfileStr=filename.substring(filename.lastIndexOf("\\")+1); InputStreamins=newFileInputStream(theFile.getPath());
//theFile自定义变量,有get/set方法 FileoutFile=newFile("E:\\"+fileStr); //文件的保存名,自定义 if(outFile.exists()){ setMsg("该文件已存在");returnSUCCESS; } FileOutputStreamoutStream=newFileOutputStream(outFile); inttotal=ins.available(); intn=(int)Math.floor(total/10000); //50000字节的缓冲区可以自定义 intleave=(int)total%10000; byte[]inOutb=null; if(n>0){ for(inti=0;i<n;i++){ inOutb=newbyte[10000]; ins.read(inOutb,0,10000); outStream.write(inOutb);//写出流 outStream.flush(); } } inOutb=newbyte[leave]; ins.read(inOutb,0,leave); outStream.write(inOutb); outStream.flush(); //将字节写到文件写完 ins.close(); outStream.close(); setTopMsg("文件上传成功");returnSUCCESS;}文件上传二.uploadify/fileupload说明: 1.这两个组件都是框架封装的独立标签 2.fileupload是单文件上传,uploadify是多文件上传
后台数据处理dto方法dao方法常用工具类dto方法java.lang.Objectjava.util.AbstractMap<K,V>java.util.HashMapcom.yinhai.sysframework.dto.BaseDTOParamDTOPrcDTODTOSerializableCloneableMap一.dto之间的关系继承类实现接口子类dto方法二.ParamDTO的方法1.获取用户信息publicIUsergetUserInfo()getUserid/getUserId获取用户系统idgetLoginid/getLoginId登录账号getName获取姓名getNowPosition当前使用的岗位getYab003/getOrgId分中心getDepartId获取直属部门/机构的idgetYab139获取当前岗位所属组织的数据区注:"/"过后的是为了兼容老版本dto方法2.获取表格信息publicIntegergetStart(StringgridId)publicIntegergetLimit(StringgridId)当页面上传入一个分页表格的id,可以获取到分页表格当前页和每页条数的信息publicBaseDTOgetGridInfo()当页面传入一个表格的id,可以获取表格的新增/修改/删除/编辑行的信息dto方法3.获取参数信息publicIntegergetAsInteger(Stringkey,intdefaultValue)包括取各种格式的信息,以下为一个例子可传一个参数或两个参数,第一个为取得字段名称,第二个为空时的默认值。dto方法4.检查空值方法publicbooleanisEmpty(Stringkey)publicbooleanisNotEmpty(Stringkey)dto方法5.转换格式方法publicStringtoXML()publicStringtoString()publicVOtoVO(StringvoClass)publicDomainObjecttoDomainObject(StringdomainClass)publicDomainObjectgetAsDomainObject(Stringkey)publicMapgetDtoAsMap()dto方法6.其他方法publicjavax.servlet.http.HttpServletRequestgetRequest()可以得到request,然后获取各种请求的信息dao方法1.基础增删改查方法和调存储过程intdelete(StringstatementName,Objectobj)Objectinsert(StringstatementName,Objectobj)intupdate(StringstatementName,Objectobj)ObjectqueryForObject(StringstatementName,Objectobj)ListqueryForList(StringstatementName,Objectobj)voidcallPrc(StringprcName,PrcDTOdto)throwsPrcExceptiondao方法2.分页查询ListqueryForPage(StringgridId,StringstatementName, ParamDTOparamDTO)PageBeanqueryForPageWithCount(StringgridId,StringstatementName, Objectobj,ParamDTOparamDTO)voidqueryWithRowHandler(StringstatementName,ObjectparameterObject, com.ibatis.sqlmap.client.event.RowHandlerrowHandler, intskipResults,intmaxResults)dao方法3.批量新增intinsertBatch(StringstatementName,List<?>list)注意事项: 1.只有一个事务 2.返回的是成功的条数 3.第一个参数为调用的sql,第二个参数中每条数据对应一次新增常用工具类ValidateUtilWebUtilJSonFactoryDateUtil常用工具类1.ValidateUtilisEmpty/isNotEmpty(Objectobj/Stringstr/Connectioncon)判断是否为空值areEqual(Objectobj,Objectobj2)判断两个对象是否相等areEqualIgnoreCase(Stringobj,Stringobj2)判断两个字符串是否相等a.常用方法常用工具类isAlphabetic(Strings) 是否只有字母isDate(Stringdate) 是否是日期格式isEmail(Strings) 是否是邮件格式isInteger(Strings) 是否是Integer格式isMinute(Strings) 是否是分钟格式(0-59)b.判断格式方法常用工具类c.其他方法daysInFebruary(intyear)isDateAfterDate(Stringdate,DatetheDate)isIntegerInRange(Strings,inta,intb)返回指定年的二月的天数判断第一个日期是否在第二个日期之后判断字符串数字是否在(a,b)之间常用工具类2.WebUtilIUsergetUserInfo(HttpServletRequestrequest)获取用户信息和dto中的getUserInfo是同一个方法StringgetRequestUrl(HttpServletRequestrequest)获取访问功能的URLStringgetUserAgent(HttpServletRequestrequest)获取访问的用户浏览器和操作系统StringgetClientIp(HttpServletRequestrequest)获取本机IP地址isAjaxRequest(HttpServletRequestrequest)判断是否是Ajax请求常用工具类3.JSonFactoryStringbean2json(Objectsrc)<T>Tjson2bean(Stringjson,Class<T>classOfT)StringtoJson(Stringret)StringgetJson(Stringret)处理值里面有转义符的字符串,采用toJSONString的方法处理值里面有转义符的字符串常用工具类4.DateUtilintcomputeDateOnly(StringdateBegin,StringdateEnd,Stringformat,booleanbWith)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 采矿学课程设计华北科技
- 电器课程设计前言
- 左支座课程设计工艺卡片
- 钢笔字课程设计
- 配电装置课程设计
- 课程设计书封面
- 项目管理学课程设计
- 泵与泵站课程设计草图
- 防触电课程设计
- 营销助理培训课程设计
- Unit 3 We should obey the rules. Lesson15(说课稿)-2023-2024学年人教精通版英语五年级下册
- 绵阳市高中2022级(2025届)高三第二次诊断性考试(二诊)语文试卷(含答案)
- 2024年聊城市东昌府区中医院招聘备案制工作人员考试真题
- 2025年极兔速递有限公司招聘笔试参考题库含答案解析
- 一般固废处理流程
- 《健康体检知识》课件
- 《AIGC应用实战(慕课版)》-课程标准
- 政府机关办公用品配送方案
- 生产计划主管述职报告
- 永威置业项目交付前风险排查表
- 《储能材料与器件》课程教学大纲(新能源材料与器件专业)
评论
0/150
提交评论