06-实例开发menu菜单功能-CRUD(3课时12-21)

http://www.miniui.com/demo/#src=datagrid/celledit.html

添加

第1-2节

  1. 查看databinding.jsp发现添加时链接到/AjaxService.jsp?method=SaveEmployees"
    2)通过前台打印请求格式,发现请求格式为json数组 也就是说表单数据转成json字符中的过程框架帮我们完成了。
    [{"name":"name","_id":2,"_uid":2,"_state":"added","loginname":"12121","salary":"3860","gender":"1","age":30,"birthday":"2018-12-18T00:00:00"}]

基于上面的研究。我们开始开发

注意后台用对象数组接即可。此外新增加一下method属性用来区分操作类型。
我们约定好添加用add 修改update 删除del

基于上一章内容,开发菜单添加功能

1)menu.jsp中的saveData()函数修改为如下内容:

function saveData() {
    //获取变动的数据
var data = grid.getChanges();
var json = mini.encode(data);//反序列成json数据
//alert(json);
grid.loading("保存中,请稍后......");
//json数组
$.ajax({
    headers: {//公有配置,可以封装复用
'Accept': 'application/json',
'Content-Type': 'application/json'
},
url: "<%=request.getContextPath()%>/admin/menu/crud",//method是操作标识。save 
update del
data: json,
type: "post",
success: function (result) {
    //alert(result.code);
        grid.reload();
    
},
error: function (jqXHR, textStatus, errorThrown) {
alert(jqXHR.responseText);
}
});
}

2)MenuController.java 新增加如下方法

     @RequestMapping("/crud")
 @ResponseBody
public ResutMsg crud(@RequestBody Menu[] menus) {
    String oper=menus[0].get_state();
    ResultMsg msg=new ResultMsg();
    int i=0;
    if(oper.equals("added")){//添加操作
    i=MenuServiceImpl.add(menus);
    }else if(oper.equals("modified")){//修改操作
        System.out.println("修改操作");
    }
    if(i==menus.length){
        msg.setCode(0);
        msg.setMsg("成功");
    }else{
        msg.setCode(-1);
        msg.setMsg("失败");
    }
    return msg;
}

3)IMenuService新增add方法

public interface IMenuService {
int add(Menu[] menus);
}

4)MenuServiceImpl实现类相关方法

@Override
public int add(Menu[] menus) {
    int i=0;
    for(Menu m:menus){
        String id=UuidGenerateUtil.getUUID();
        m.setId(id);
        int count=menuMapper.add(m);
        i+=count;
    }
    return i;
}

5)IMenuMapper.java新增

@Insert("insert into t_menu values(#{id},#{text},#{pid},#{url},#{addDate},null,null)")
int add(Menu m);

6)UuidGenerateUtil

public class UuidGenerateUtil {

    public static String getUUID() {
        
        String uuid=UUID.randomUUID().toString().replace("-", "");
        System.out.println(uuid);
        return uuid;
    }

}

测试:登录并操作菜单管理中的添加功能进行测试。成功_
总结:注意时间功能,引 java.sql.Date

第3节 学生完成做上述程序

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • pyspark.sql模块 模块上下文 Spark SQL和DataFrames的重要类: pyspark.sql...
    mpro阅读 9,521评论 0 13
  • 对于java中的思考的方向,1必须要看前端的页面,对于前端的页面基本的逻辑,如果能理解最好,不理解也要知道几点。 ...
    神尤鲁道夫阅读 842评论 0 0
  • JSP总结(经典) day1 JSP 定义: 1)Java Server Page, Java EE 组件,本...
    java日记阅读 3,529评论 0 13
  • 前言 多年以前自学Java,在本地做了一些笔记。最近几年流行播客,一方面防止丢失,一方面可以帮助其他小伙伴...
    chaohx阅读 1,044评论 0 3
  • Java实例教程(下) Java当前日期/时间Java将字符串转换为日期Java当前工作目录Java正则表达式Ja...
    茶茶点阅读 7,376评论 2 32