zoukankan      html  css  js  c++  java
  • FastJson

      前后台最常用的交互方式是表单交互,而前台语言是js,后台为Java语言;显然,二者的原理、机制、语法并不兼容,二者产生的对象也不能被对方解读。在网络传输中,使用的是请求-响应,即无论后台传递什么类型的数据,也不论前台传回的什么数据,网络层均当作字符串进行处理。所以,前后台传递数据就只能使用字符串,即各自完成一个转换过程,将要发送的数据转为字符串,将要收到的字符串解析成自己的对象。因为传输的字符会涉及前后台双方的解析和处理,所以双方最好使用一种通用的规则来进行编辑、转换字符串,这个标准或协议就是JSON,JSON用于交换数据,是一种string,一种独立与平台的数据格式。即前台需要将数据转为JSON发送给后台,后台使用JSON解析数据,转换成自己需要的类型

      Fastjson是阿里的开源JSON解析库,可以解析JSON格式的字符串,支持将JavaBean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean

      Fastjson API:https://www.w3cschool.cn/fastjson

    Fastjson:

      toJSONString:将Java对象序列化为JSON字符串

    JS:
      
      JSON.stringify:将 JavaScript 值转换为 JSON 字符串

    后代向前台传递数据:

        @RequestMapping("/list")
        @ResponseBody
        public DataGridResult getPage(@RequestParam Map<String, Object> params){
            //查询列表数据
            Query query = new Query(params);
            return sysRoleService.getPageList(query);
        }

    前台向后台提交数据:

                $.ajax({
                    type: 'POST',
                    url: url,
                    data: JSON.stringify(vm.role),
                    success: function(r){
                        if(r.code == 0){
                            layer.alert('操作成功', function(index){
                                window.location.href = 'index';
                            });
                        }else{
                            layer.alert(r.msg);
                        }
                    }
                });
        @RequestMapping("/save")
        @ResponseBody
        public R save(@RequestBody SysRole role){
            sysRoleService.save(role);
            return R.ok();
        }

  • 相关阅读:
    有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不 死,问每个月的兔子总数为多少?
    Tomcat 全攻略
    MySQL 查询in操作,查询结果按in集合顺序显示
    乱码问题解决之道
    Java程序员面试中的多线程问题
    APACHE多个服务器的配置
    Python读写文件
    php字符串处理函数大全
    python 执行系统命令
    jquery-mobile
  • 原文地址:https://www.cnblogs.com/roxy/p/7679930.html
Copyright © 2011-2022 走看看