Jimoshi_整合三大框架(二)--添加用户信息数据、删除用户信息数据、修改用户信息数据

Jimoshi成长经历:前面的笔记后面再慢慢整理-------方便自己

目录:添加用户信息数据、删除用户信息数据、修改用户信息数据

整合三大框架(二):Struts2+Hibernate4+Spring4


一、添加用户信息数据(继整合三大框架一续写)

  1、编写success.jsp页面发送添加请求

  代码示例:

  <%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>














                  toolbar="#toolbar" pagination="true" fit="true"
            url="${pageContext.request.contextPath}/user/user_showMsg.action" striped="true"
            rownumbers="true" fitColumns="true" border="false">
       
           
               
               
               
               
           
       
       

                增加
                修改
                删除
           

            
style="width:400px;height:280px;padding:10px 20px"
            closed="true" buttons="#dlg-buttons">
       
学生信息

       

       

         

               
               
           

           

               
               
           

           

               
               
           
      
       
   

   
   
姓名 密码




  2、编写UserDao类添加AddMsg方法

  代码示例:

  /**
    * 添加用户
    * @param uname 传入姓名
    * @param upsw 传入密码
    * @return
    */
   public boolean AddMsg(String uname,String upsw);

  3、重写UserDaoImpl中的AddMsg方法

  代码示例:

  @Override
    public boolean AddMsg(String uname, String upsw) {
        // TODO Auto-generated method stub
        boolean flag =false;
        User user = new User();
        user.setUname(uname);
        user.setUpsw(upsw);
        this.getCurrentSession().save(user);
        return flag;
    }

  4、编写UserService类添加addMsg方法

  代码示例:

  /**
    * 添加用户信息
    * @param uname 传入姓名
    * @param upsw 传入密码
    * @return
    */
   public boolean addMsg(String uname,String upsw);

  5、重写UserServiceImpl类中的addMsg方法

  代码示例:

  @Override
    public boolean addMsg(String uname, String upsw) {
        // TODO Auto-generated method stub
        return userDao.AddMsg(uname, upsw);
    }

  6、编写UserAction中的方法调用UserServiceImpl

  代码示例:

  private String json;
  public String getJson() {
    return json;
  }
  public void setJson(String json) {
    this.json = json;
  }
  //添加用户
  public void addMsg(){
     JSONObject jso = JSONObject.fromObject(json);
     System.out.println(jso);
     User user=(User) JSONObject.toBean(jso, User.class);
     boolean flag =false;
     flag = userService.addMsg(user.getUname(),user.getUpsw());
     response.setCharacterEncoding("utf8");
     PrintWriter pw;
     try {
        pw = response.getWriter();
          pw.write(flag+"");
       } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
  }

  7、测试

二、删除用户信息数据
 
  1、编写success.jsp页面发送url请求

  代码示例:

  //删除用户信息
  function deletes(){
    //获取被选中需要删除的数据
     var data = $("#StuList").datagrid('getSelections');
     if(data.length==0){
         $.messager.show({
                title:'警告',
                msg:'请选中需要删除的数据',
                timeout:1000,
                showType:'slide',
                style:{
                        top:'100',                        
                    }
            });
     }else{
          //声明一个空的数组 装选中的uid
          var uids = [];
          for (var i = 0; i < data.length; i++) {
            uids.push(data[i].uid);
        }
    $.messager.confirm('确认对话框', '您确认删除选中的'+data.length+'条数据吗?', function(r){
                if (r){
                    //通过ajax请求将对应数据发送到后台中
                    $.ajax({
                        type:"post",
                        url:'${pageContext.request.contextPath}/user/user_deleteMsg.action',
                        data:{"uids":uids},
                        dataType:"text",
                        success:function(data){
                                //提示删除成功
                                $.messager.alert('提示','删除成功','info',function(){
                                $("#StuList").datagrid('reload');
                                $("#StuList").datagrid('uncheckAll');
                    });
                }
                });
             }
         });
      }
   }

   2、编写UserAction类添加deleteMsg方法并且测试请求是否发送成功

   代码示例:

   //删除用户
   public void deleteMsg(){
         System.out.println(111);
    }

   3、编写UserDao类添加删除用户的方法deleteMsg

   代码示例:

   /**
     * 删除用户
     * @param uid 传入用户id
     * @return
     */
    public void deleteMsg(int uid);

   4、重写UserDaoImpl类实现具体的删除用户的方法

   代码示例:

       @Override
    public void deleteMsg(int uid) {
        // TODO Auto-generated method stub
        User user = (User) this.getCurrentSession().get(User.class, Integer.valueOf(uid));
        this.getCurrentSession().delete(user);
    }

   5、编写UserSerivce类添加批量删除用户的方法

   代码示例:

   /**
     * 批量删除用户信息
     * @param uids 传入选中的用户
     * @return
     */
   public void deleteMsg(String uids[]);

   6、重写UserServiceImpl类实现批量删除用户的方法

   代码示例:

   @Override
    public void deleteMsg(String uids[]) {
        // TODO Auto-generated method stub
        for (int i = 0; i < uids.length; i++) {
            userDao.deleteMsg(Integer.valueOf(uids[i]));
        }
    }

   7、编写UserAction类实现删除用户的方法

   代码示例:

   private int uids[];
   private HttpServletRequest request;
   public int[] getUids() {
    return uids;
   }
   public void setUids(int[] uids) {
    this.uids = uids;
   }
   //删除用户
   public void deleteMsg(){
    String uids[]=request.getParameterValues("uids[]");
    userService.deleteMsg(uids);
    PrintWriter pw;
    try {
        pw = response.getWriter();
        pw.write("");
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    }
   @Override
   public void setServletRequest(HttpServletRequest request) {
    // TODO Auto-generated method stub
    this.request=request;
    }
   
   8、测试

三、修改用户信息数据

   1、编写success.jsp页面发送url请求

   代码示例:

   //修改用户信息
   function updates(){
     var data = $("#StuList").datagrid('getSelections');    
        if(data.length==0){
            $.messager.show({
                title:'警告',
                msg:'请选中需要修改的数据',
                timeout:1500,
                showType:'slide',
                    style:{
                        left:100,
                        right:'',
                        top:100
                    }
                  });
        }else if(data.length!=1){
            $.messager.show({
                title:'警告',
                msg:'你只能选择一条数据修改',
                timeout:1500,
                showType:'slide',
                    style:{
                        left:100,
                        right:'',
                        top:100
                    }
                  });
        }else{
            var user =$("#StuList").datagrid('getSelected');
            $("#uid").textbox('setValue',user.uid)
            $("#uname").textbox('setValue',user.uname);
            $("#upsw").textbox('setValue',user.upsw);
            $('#dlg').dialog('open').dialog('center').dialog('setTitle','修改信息');
               //隐藏保存按钮
                $('#addss').hide();
               //隐藏id框
                $('#uuid').hide();
                //显示确认按钮
                $('#updatess').show();
        }
        
    }    
    //确认修改用户信息
    function updatess(){
          var user = new Object();
          user.uid = $("#uid").val();
          user.uname = $("#uname").val();
          user.upsw = $("#upsw").val();
          var json1=JSON.stringify(user);           
        $.ajax({                       
                type:"post",
                url:"${pageContext.request.contextPath}/user/user_updateMsg.action",
                data:{"json1":json1},
                dataType:"text",
                success:function(data){
                    $.messager.alert('提示','修改成功', data)
                    $('#StuList').datagrid('reload');  
                    $('#dlg').dialog('close')
                }
        })
   }

   2、编写UserAction类测试请求是否成功

   代码示例:

   //修改用户
    public void updateMsg(){
       System.out.println(111);
    }

   3、编写UserDao类添加删修改用户的方法updateMsg

   代码示例:

   /**
     * 修改用户
     * @param uid 传入用户id
     * @param uname 传入用户姓名
     * @param upsw 传入用户密码
     */
   public void updateMsg(int uid,String uname,String upsw);

   4、重写UserDaoImpl类实现具体的修改用户的方法

   代码示例:

   @Override
    public void updateMsg(int uid, String uname, String upsw) {
        // TODO Auto-generated method stub
        User user = (User) this.getCurrentSession().get(User.class, Integer.valueOf(uid));
        user.setUname(uname);
        user.setUpsw(upsw);
          //this.getCurrentSession().update(user);
    }

   5、编写UserSerivce类添加修改用户的方法

   代码示例:

   /**
     * 修改用户信息
     * @param uid 传入用户id
     * @param uname 传入用户姓名
     * @param upsw 传入用户密码
     */
   public void updateMsg(int uid,String uname,String upsw);

   6、重写UserServiceImpl类实现修改用户的方法

   代码示例:

   @Override
    public void updateMsg(int uid, String uname, String upsw) {
        // TODO Auto-generated method stub
        userDao.updateMsg(uid, uname, upsw);
    }

   7、编写UserAction类实现修改用户的方法

   代码示例:

   private String json1;
   public String getJson1() {
     return json1;
   }
   public void setJson1(String json1) {
    this.json1 = json1;
   }
   //修改用户
   public void updateMsg(){
      JSONObject jso = JSONObject.fromObject(json1);
    User user=(User) JSONObject.toBean(jso, User.class);
    userService.updateMsg(user.getUid(), user.getUname(), user.getUpsw());
    PrintWriter pw;
    try {
        pw = response.getWriter();
        pw.write("");
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
   }

   8、测试

你可能感兴趣的:(Jimoshi-流行框架)