zoukankan      html  css  js  c++  java
  • update 不报错 但是不修改值得原因之一

    第一种

    ServiceImpl  如果使用 

    1 public void updateEmp(Integer id,Emp emp) {
    2         // TODO Auto-generated method stub
    3         Map<String,Object> map = new HashMap<String,Object>();
    4         map.put("id", id);
    5         map.put("emp", emp);
    6         dao.updateEmp(map);
    7     }

    则 EmpMapper.xml 

    1 <update id="updateEmp" parameterType="java.util.Map">
    2       
    3       update Emp set empname=#{emp.empname},empbirth=#{emp.empbirth},5   </update>

    里修改对象都需要

    #{emp.empname} 

    第二种 

     update 方法post 里   如果参数没有写入ID 

     1 @RequestMapping(value="/update.do",method=RequestMethod.GET)
     2     public String update(Model model,Integer id){
     3         Station s = empService.getEmpById(id);
     4         
     5         model.addAttribute("emp", s);
     6         
     7         return "houtai/back/emp/update";
     8         
     9     }
    10     
    11     @ResponseBody
    12     @RequestMapping(value="/update.do",method=RequestMethod.POST)
    13     public String update(Station emp){
    14         empService.updateEmp(emp);
    15         
    16         return "true";
    17         
    18     }
    @ResponseBody  这个注释的意思    将内容或对象作为 HTTP 响应正文返回,并调用适合HttpMessageConverter的Adapter转换对象,写入输出流。



    jsp 页面里 修改 这一项代码,这个@ResponseBody 返回字符串 如 : 修改方法中 return "true"


    则 jsp 页面
    如 : data=="true"
     1 function updateDept(){
     2             var id =$("input:first").val();
     3             $("#formupdate").ajaxSubmit({
     4                 
     5                 url:"<%=path%>/Emp/update.do?id="+id,
     6                 type:"post",
     7                 resetForm:false,
     8                 success:function(data){
     9                     if(data=="true"){
    10                         //获取父窗口的window对象 
    11                         var win = art.dialog.open.origin;  
    12                         //调用父窗口的js方法refresh();
    13                         win.refresh();
    14                         //关闭对话框
    15                         art.dialog.close();
    16                     }else{
    17                         alert(data.message);
    18                     }
    19                 },  
    20                 error:function(xhr,textStatus,errorThrown){  
    21                     alert("修改员工失败,请重试");
    22                 } 
    23             });
    24         }
    
    
    









    ServiceImpl 

    1 public void updateStation(Station emp) {
    2         // TODO Auto-generated method stub
    3         
    4         dao.updateEmp(emp);
    5         
    6     }

     则 xml 里 sql 语句为

       
      <update id="updateEmp" parameterType="Emp" >
              update Emp set empname=#{empname},empbirth=#{empbirth} where empid=#{empid}
      </update>

    就不需要第一种SQL。

  • 相关阅读:
    ios10兼容问题
    safari图片跨域
    出现Unable to locate appropriate constructor on class 错误可能的原因
    localStorage、sessionStorage用法以及区别
    多行文本垂直居中,多行文本溢出
    【汉字】转【pīnyīn】
    移除行块级元素之间的空格(译文)
    jquery插件——检测DOM元素是否在浏览器可视范围之内
    监控阮一峰老师的blog
    PHP实现linux命令tail -f
  • 原文地址:https://www.cnblogs.com/HeXiaoZhou/p/6533913.html
Copyright © 2011-2022 走看看