当前位置: 首页 > news >正文

网站建设培训赚钱吗如何给网站做排名优化

网站建设培训赚钱吗,如何给网站做排名优化,wordpress激活,常州溧阳建设工程管理中心网站解决表单提交的数据丢失问题#xff1a; 一、问题描述#xff1a; 当我们在给前台页面设置修改功能的时候#xff0c;因为有些信息是不允许进行修改的#xff0c;所以在修改表单中没有相应的修改输入框#xff0c;但是在修改表单的数据提交的时候#xff0c;那些不允许修…解决表单提交的数据丢失问题 一、问题描述   当我们在给前台页面设置修改功能的时候因为有些信息是不允许进行修改的所以在修改表单中没有相应的修改输入框但是在修改表单的数据提交的时候那些不允许修改的信息在数据库中却不见了。   二、原因分析        提交表单的时候因为在表单中没有那些不允许修改的信息相对应的数据所以在执行SQL修改语句的时候这些信息就被默认的null值替换了相当于这些信息被修改为了null值我的Dao层实现类是通过SpringDataJpa自动生成的。   三、解决方案        方案一在修改表单中添加那些不允许修改信息的隐藏输入框。        优点容易理解。        缺点如果不允许修改的信息太多代码量会比较大另外这种方案的安全性确实是有一些低        适用场景字段较少的时候可取。          方案二在domain实体类的不许修改的字段上加上Column(updatable false)这个标签。        优点比较简单。        缺点当真正需要对这些信息进行修改的时候就无法修改。        适用场景永久不需要对该字段进行修改。              方案三使用SpringMVC专门为我们提供的数据丢失解决方案使ModelAttribute注解【推荐使用】        优点当不能修改的信息较多时减少代码量更为安全。        缺点较难理解。       操作1、先在前台添加一个请求参数obj.methodupdateEmployee;   //添加或者修改用户saveEmployee:function (){//serializeObject:序列化表单中的数据使之能完整提交var obj $(#updateFrom).serializeObject();//id的那个隐藏输入框有值就表示修改var url /employee/addEmployee;if (obj.id obj.id 0) {url /employee/updateEmployee;//添加一个请求参数obj.methodupdateEmployee;}//如果表单验证失败就阻止表单提交【当表单内所有输入控件都验证通过的时候这个方法返回truevalidate确认使生效】var valid $(#updateFrom).form(validate);if (!valid) return;$.post(url, obj, function (data) {//提示一下$.messager.alert(消息, data.msg \r\n (data.exception ? data.exception : ), info);if (data.status 200) {//调用搜索页面数据的方法window.method.search();//关闭window窗口$(#win).window(close);}}, json);}           2、在Controller控制层添加如下一个方法方法上加上注解ModelAttribute(updateEmployee)    。 /*** 修改员工之前通过id查询员工【解决数据丢失问题】* ModelAttribute(updateEmployee)* SpringMVC框架专门提供来解决数据丢失问题* 加了ModelAttribute注解的方法会在当前类的所有处理请求的方法之前都会先执行此方法* */ModelAttribute(updateEmployee)public Employee findEmployeeToEdit(Long id, String method){//只有修改员工的方法执行之前先去查询员工因为每个方法执行前都会执行这个方法if(id ! null updateEmployee.equals(method)){Employee employee employeeService.findOneById(id);//员工对象和它关联的部门对象断开关系部门就变成临时对象注意如果查询的表有相关联的对象必须要先解除关联不然会报 n to n错误employee.setDepartment(null);//持久对象的主键值不能被修改所以必须要断开联系return employee;}return null;}           3、在修改方法的参数列表上添加ModelAttribute(updateEmployee)注解。 /*** 修改员工* ModelAttribute(updateEmployee)写在参数列表前* 先执行findEmployeeToEdit方法得到一个持久状态的对象懒加载的特点* 再从表单请求中获取employee对象* 合并非空属性值最后以数据库查询出来的持久状态的对象为准再传入当前方法的参数列表中* 下面形参列表的employee其实就是前台传过来的数据和上面方法传过来的数据的合并主体是上面方法查到的数据* 如果前台传来有数据就把其中对应的数据覆盖前台对应数据为空就继续用查询到的数据** 加了ResponseBody注解表示处理异步请求SpringMVC内部默认使用jackson工具转化为JSON进行返回不跳转页面*/ResponseBodyRequestMapping(/updateEmployee)public ResultJson updateEmployee(ModelAttribute(updateEmployee)Employee employee){try {employeeService.save(employee);} catch (Exception e) {e.printStackTrace();return new ResultJson(500,员工修改失败,e.getClass().getName() : e.getMessage());}return new ResultJson(200,员工修改成功,null);}   SpringMVC的ModelAttribute(updateEmployee) 注解执行原理分析   1、添加有该注解的findEmployeeToEdit方法会在当前类的所有处理请求的方法之前执行因此必须写先在前台页面添加一个请求参数obj.methodupdateEmployee; 然后在 if(id ! null updateEmployee.equals(method)) 语句中通过请求参数确保该方法只对修改方法updateEmployee起作用   2、findEmployeeToEdit执行完毕后会或得一个持久状态的employee对象懒加载特性然后注解ModelAttribute通过名字updateEmployee找到修改方法的参数列表的同名注解updateEmployee(ModelAttribute(updateEmployee)Employee employee)   3、然后以findEmployeeToEdit方法查询到的employee对象作为主体用前台传过来的employee对象中有值的数据替换掉主体对象中相对应的数据这样新得到的employee对象就既有了前台的修改数据又保存了不可被修改的信息的数据。          注意如果出现如图的 n to n 错误就是因为持久对象的主键值不能被修改所以必须要断开联系例如employee.setDepartment(null);  转载于:https://www.cnblogs.com/wanghj-15/p/11090840.html
http://www.pierceye.com/news/781682/

相关文章:

  • 做网站的越来越少了西宁网站建设多少钱
  • 环翠区网站建设做网站 用 显示器
  • 没学过计算机开始学做网站给别人做网站收多少钱
  • 网站建设的功能都需要有哪些方面大气一点的公司名字
  • 湘潭做网站价格问下磐石网络价格网站
  • 网站备案后可以更换域名吗2345网页游戏
  • 登录浏览器是建设银行移动门户网站广州专业做外贸网站
  • 思明区建设局网站微信 网页版
  • 淘宝客怎么做自己的网站搜索引擎营销案例分析题
  • 给女朋友做网站的素材友情链接是什么意思
  • 成都微信网站建设多少钱南平抖音搜索排名seo软件
  • 做外贸用哪些网站成都房地产开发商排名
  • 网站建设实施计划包括网页关键词优化
  • 建企业网站怎么做单页面网站源码
  • 儿童网站模板微信网站下载
  • 建设网站的市场背景搭建本地网站做色流
  • 湖南岳阳网站建设公司黄页顺企网宾馆在什么网站做推广效果好
  • 做外贸网站 怎么收钱网站自适应手机怎么
  • wordpress分只显示标题网站内容优化关键词布局
  • 校园云网站建设怎么做网站自动响应
  • 怎么做扫码进入网站北京seo计费
  • 网站备案 2016如何找网站
  • 网站开发客户挖掘做网站没签合同
  • 适合大学生做的兼职网站中国企业网信息查询系统
  • 淘宝网站的建设与运营设计思路做网站商铺模板
  • 网站优秀设计方案中国网站制作企业排行榜
  • 南昌建设局网站查询塔吊证怎么查福州seo网站建设
  • 机关内网站建设方案书给人做传销网站
  • 厦门有什么网站制作公司邢台太行中学简介
  • 天合建设集团网站做一个网站得做多少个页面