springMVC前后端数据及交互部分是最重要的,因为其余部分都被封装好了,我们要做的就是这个部分,我的框架才用SSM,进公司以来在项目组也用到了这些,但是不够全面,系统,脑子里面思路混乱,所以总结下。

交互主要分为三个部分

1.简单参数(比如url带参数,或者ajax传递几个参数(数量不多))(查询)

2.JSON对象(简单,复杂,集合对象)(需要引入jackson的jar包)(保存,更新,批量保存等)

3.数组(批量删除)

废话不说,代码里面有注释,并没有用到和数据库交互(这个demo不需要,那样不利于直接看效果),在此都是模拟的controller返回数据。

前端jsp:

<body><p>--------------------------一:URL方式传参数或者传几个基本类型参数 1.HttpServletRequest req  2.@RequestParam注解   3.@PathVariable搭配RESTFul风格URL------------------------</p><button type="button" οnclick="sendUrlParam()">点击测试url传参数controller注解方式接收</button><p>--------------------------二:返回JSON格式字符串对象参数 @ResponseBody注解演示------------------------------------------------------------------------------------------</p><button type="button" οnclick="selectById()">@ResponseBody注解演示</button><p>--------------------------三:接收JSON格式字符串对象参数  @RequestBody注解传递json格式对象字符串---------------------------------------------------------------</p><button type="button" οnclick="sendJsonStr()">1.点击发送json字符串到后台(单一对象)</button><button type="button" οnclick="sendComplexJsonStr()">2.点击发送嵌套json字符串到后台(复杂对象)</button><p></p><button type="button" οnclick="sendJsonListStr()">3.点击发送json字符串到后台(集合对象)</button><p>---------------------------三:传递数组(批量删除)-----------------------------------------------------------------------------------------------------------------</p><button type="button" οnclick="sendArrayStr()">点击发送数组到后台</button><p>basePath的值是:<span><%=basePath%></span></p></br><p>request.getContextPath()的值是:<span><%=path%></span></p><script type="text/javascript">function sendUrlParam() {$.ajax({type : 'post',url : "<%=basePath%>ssm/sendUrlParam?testName=三毛",dataType : "json",success : function(data) {   console.log(data);alert(data.userName);},error : function() {alert("查询失败");}}); }function selectById(){$.ajax({type : 'post',url : "<%=basePath%>ssm/selectUserReturnByJSON",//url的三种写法//    /ssmaven/ssm/selectUserReturnByJSON//    ${pageContext.request.contextPath}/ssm/selectUserReturnByJSONdataType : "json",success : function(data) {console.log(data);var name = data[1].userName;alert(name);},error : function() {alert("查询失败");}});}////单个对象User 后台用@RequestBody接受  请求json,输出是json 注意:发送的是JSON对象字符串!!!function sendJsonStr(){var jsonData = {  "userId" : "111",  "userName" : "卡丽熙","userPassword":"12138","userEmail":"888888@gmail.com"};$.ajax({type:'post',url:'${pageContext.request.contextPath }/ssm/sendJsonStr',contentType:'application/json;charset=utf-8',//指定为json类型,这个属性是配合注解@RequestBody使用的//数据格式是json串data:JSON.stringify(jsonData),success:function(data){//返回json结果//注意 1条数据不能用data[0].userName的形式取值 因为我们controller返回的不是List<User>alert(data.userName);}       }); }//嵌套对象UserExt 包含一个Goods引用属性 后台用@RequestBody接收  注意:发送的是JSON对象字符串!!!function sendComplexJsonStr(){var jsonData = {  "userId" : "666",  "userName" : "卡丽熙","userPassword":"12138","userEmail":"888888@gmail.com","goods":{"name":"商品电视机","price":"2998元"}//注意对象的写法 JS里面 key不加""也可以的{name:"商品电视机",price:"2998元"}};$.ajax({type:'post',url:'${pageContext.request.contextPath }/ssm/sendComplexJsonStr',contentType:'application/json;charset=utf-8',//指定为json类型//数据格式是json串data:JSON.stringify(jsonData),success:function(data){//返回json结果//注意 1条数据不能用data[0].userPassword的形式取值 因为我们controller返回的不是List<User>alert(data.goods.name);}       }); }//List<User>对象 function sendJsonListStr() {//方式一/*     var jsonData = [ {"userId" : "111","userName" : "卡丽熙","userPassword" : "12138","userEmail" : "888888@gmail.com",}, {"userId" : "222","userName" : "瑟太后","userPassword" : "23222","userEmail" : "7777777@gmail.com",}, {"userId" : "333","userName" : "三傻","userPassword" : "54323","userEmail" : "934333@gmail.com",} ]; *///方式二var jsonData=[];var user1={"userId" : "111","userName" : "卡丽熙","userPassword" : "12138","userEmail" : "888888@gmail.com",};var user2={"userId" : "222","userName" : "瑟太后","userPassword" : "23222","userEmail" : "7777777@gmail.com",};var user3={"userId" : "333","userName" : "三傻","userPassword" : "54323","userEmail" : "934333@gmail.com",} jsonData.push(user1);jsonData.push(user2);jsonData.push(user3);$.ajax({type : 'post',url : '${pageContext.request.contextPath }/ssm/sendJsonListStr',contentType : 'application/json;charset=utf-8',//指定为json类型//数据格式是json串,多个对象用[]包装data : JSON.stringify(jsonData),success : function(data) {//返回json结果alert(data[1].userName);}});}///传递数组对象/**var   ids= new Array();$("input[class='detailCheck']:checked").each(function(i,k){var itemId=$(this).attr("itemId");ids[i]=itemId;});*/function sendArrayStr() {//1.字面方式定义数组/* var arrayStr = [];arrayStr.push("大草原");arrayStr.push("大白兔");arrayStr.push("白又白");arrayStr.push("两只耳朵竖起来"); *///2.常规方式定义数组var arrayStr= new Array();arrayStr[0]="风吹";arrayStr[1]="草地";arrayStr[2]="见牛羊";arrayStr[3]="哗哗哗";$.ajax({type : 'post',url : '${pageContext.request.contextPath }/ssm/sendArrayStr',traditional : true,//注意,必须要有个设置否则传递数组报400错误。默认为false深度序列化,在此改为truedata : {"array" : arrayStr},success : function(data) {//返回json结果alert(data.userName);}});}</script>
</body>

对应controller

/*** 跳转到springmvc数据交互页面*/@RequestMapping(value="/showSpringmvcDataInteractionView")public ModelAndView showAjaxJSP(){    ModelAndView mv = new ModelAndView(); mv.setViewName("springmvc-data-interaction");return mv;  }//第一种方式:url或者简单参数传递/*** 测试url传参数controller层接收(3种方法) 1.HttpServletRequest reqquest 2.@RequestParam注解* 3.@PathVariable搭配RESTFul风格URL*/@RequestMapping(value = "/sendUrlParam")public @ResponseBodyUser testURLSendParam(@RequestParam("testName") String name,HttpServletRequest req) {// String name=req.getParameter("testName");User user = new User();user.setUserName(name);System.out.println("成功----------------------URL传递的名字是:" + name);return user;}第二种:@ResponseBody注解演示////*** controller层返回JSON方法一:responseBody注解返回JSON* @requestBody注解ajax需要设置dataType : "json" 以及 contentType : 'application/json;charset=utf-8',* @return*//*@RequestMapping(value="/selectUserReturnByJSON")public @ResponseBody User showUser(){    User user = userService.selectUserById(1);System.out.println("成功----------------------"+user.getUserName());return user;}*//*** controller层返回JSON方法二 :ResponseEntity类* 如果返回的是List<user>------把ResponseEntity<List<User>>泛型换成list<User>即可* @return*/@RequestMapping(value="/selectUserReturnByJSON")public ResponseEntity<List<User>>  showUser(){    List<User> userList=new ArrayList<User>();User user1=new User();user1.setUserEmail("23213212@qq.com");user1.setUserId(11);user1.setUserName("sam");user1.setUserPassword("123321");User user2=new User();user2.setUserEmail("46432322@qq.com");user2.setUserId(22);user2.setUserName("john");user2.setUserPassword("1234533");userList.add(user1);userList.add(user2);return new ResponseEntity<List<User>>(userList,HttpStatus.OK);}///第三种:@RequestBody注解演示////*** 使用@RequestBody注解接受前端发送json格式的字符串对象-------简单对象User*/@RequestMapping(value="/sendJsonStr")//public @ResponseBody User saveUser(@RequestBody User user){   System.out.println(user);System.out.println("前端发送的json对象字符串的名字是:"+user.getUserName());return user;}/*** 复杂对象------UserExt*/@RequestMapping(value="/sendComplexJsonStr")public @ResponseBody User sendComplexJsonStr(@RequestBody UserExt userExt){   //String name=req.getParameter("name");System.out.println(userExt);System.out.println("前端发送的json对象字符串的名字是:"+userExt.getUserName());return userExt;}/*** 多个对象list<User>*/@RequestMapping(value="/sendJsonListStr")public @ResponseBody List<User> sendJsonListStr(@RequestBody ArrayList<User> user){ ArrayList<User> userList=user;for (User u : userList) {System.out.println(u.toString());}//System.out.println("前端获取的JSON对象集合字符串为:------>"+user);//System.out.println("第三个对象的名字是:------>"+user.get(2).getUserName());return user;}第四种:数组//*** 数组* 注意:@RequestParam(value="array[]")的话会报错 不可以用[]*/@RequestMapping(value="/sendArrayStr")public @ResponseBody User  sendArrsyStr(@RequestParam(value="array") String[] array){  User user=new User();user.setUserName(array[3]);System.out.println("数组长度------>"+array.length);for (String str : array) {System.out.println("遍历输出数组的值是:------>"+str);}return user;}

界面图示效果:

控制台依次打印:

2017-09-14 13:58:48,663 [http-apr-8080-exec-10] DEBUG [org.springframework.web.servlet.DispatcherServlet] - DispatcherServlet with name 'dispatcherServlet' processing POST request for [/ssmmaven/ssm/sendUrlParam]
2017-09-14 13:58:48,664 [http-apr-8080-exec-10] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] - Looking up handler method for path /ssm/sendUrlParam
2017-09-14 13:58:48,664 [http-apr-8080-exec-10] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] - Returning handler method [public com.lin.domain.User com.lin.controller.UserController.testURLSendParam(java.lang.String,javax.servlet.http.HttpServletRequest)]
2017-09-14 13:58:48,665 [http-apr-8080-exec-10] DEBUG [org.springframework.beans.factory.support.DefaultListableBeanFactory] - Returning cached instance of singleton bean 'userController'
成功----------------------URL传递的名字是:三毛
2017-09-14 13:58:48,670 [http-apr-8080-exec-10] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor] - Written [User [userId=null, userName=三毛, userPassword=null, userEmail=null]] as "application/json;charset=UTF-8" using [org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@9660915]
2017-09-14 13:58:48,670 [http-apr-8080-exec-10] DEBUG [org.springframework.web.servlet.DispatcherServlet] - Null ModelAndView returned to DispatcherServlet with name 'dispatcherServlet': assuming HandlerAdapter completed request handling
2017-09-14 13:58:48,670 [http-apr-8080-exec-10] DEBUG [org.springframework.web.servlet.DispatcherServlet] - Successfully completed request
2017-09-14 13:58:50,493 [http-apr-8080-exec-3] DEBUG [org.springframework.web.servlet.DispatcherServlet] - DispatcherServlet with name 'dispatcherServlet' processing POST request for [/ssmmaven/ssm/selectUserReturnByJSON]
2017-09-14 13:58:50,494 [http-apr-8080-exec-3] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] - Looking up handler method for path /ssm/selectUserReturnByJSON
2017-09-14 13:58:50,495 [http-apr-8080-exec-3] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] - Returning handler method [public org.springframework.http.ResponseEntity<java.util.List<com.lin.domain.User>> com.lin.controller.UserController.showUser()]
2017-09-14 13:58:50,495 [http-apr-8080-exec-3] DEBUG [org.springframework.beans.factory.support.DefaultListableBeanFactory] - Returning cached instance of singleton bean 'userController'
2017-09-14 13:58:50,500 [http-apr-8080-exec-3] DEBUG [org.springframework.web.servlet.mvc.method.annotation.HttpEntityMethodProcessor] - Written [[User [userId=11, userName=sam, userPassword=123321, userEmail=23213212@qq.com], User [userId=22, userName=john, userPassword=1234533, userEmail=46432322@qq.com]]] as "application/json;charset=UTF-8" using [org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@9660915]
2017-09-14 13:58:50,501 [http-apr-8080-exec-3] DEBUG [org.springframework.web.servlet.DispatcherServlet] - Null ModelAndView returned to DispatcherServlet with name 'dispatcherServlet': assuming HandlerAdapter completed request handling
2017-09-14 13:58:50,501 [http-apr-8080-exec-3] DEBUG [org.springframework.web.servlet.DispatcherServlet] - Successfully completed request
2017-09-14 13:58:52,042 [http-apr-8080-exec-1] DEBUG [org.springframework.web.servlet.DispatcherServlet] - DispatcherServlet with name 'dispatcherServlet' processing POST request for [/ssmmaven/ssm/sendJsonStr]
2017-09-14 13:58:52,043 [http-apr-8080-exec-1] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] - Looking up handler method for path /ssm/sendJsonStr
2017-09-14 13:58:52,044 [http-apr-8080-exec-1] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] - Returning handler method [public com.lin.domain.User com.lin.controller.UserController.saveUser(com.lin.domain.User)]
2017-09-14 13:58:52,045 [http-apr-8080-exec-1] DEBUG [org.springframework.beans.factory.support.DefaultListableBeanFactory] - Returning cached instance of singleton bean 'userController'
2017-09-14 13:58:52,049 [http-apr-8080-exec-1] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor] - Reading [class com.lin.domain.User] as "application/json;charset=UTF-8" using [org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@9660915]
User [userId=111, userName=卡丽熙, userPassword=12138, userEmail=888888@gmail.com]
前端发送的json对象字符串的名字是:卡丽熙
2017-09-14 13:58:52,052 [http-apr-8080-exec-1] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor] - Written [User [userId=111, userName=卡丽熙, userPassword=12138, userEmail=888888@gmail.com]] as "application/json;charset=UTF-8" using [org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@9660915]
2017-09-14 13:58:52,052 [http-apr-8080-exec-1] DEBUG [org.springframework.web.servlet.DispatcherServlet] - Null ModelAndView returned to DispatcherServlet with name 'dispatcherServlet': assuming HandlerAdapter completed request handling
2017-09-14 13:58:52,053 [http-apr-8080-exec-1] DEBUG [org.springframework.web.servlet.DispatcherServlet] - Successfully completed request
2017-09-14 13:58:53,583 [http-apr-8080-exec-2] DEBUG [org.springframework.web.servlet.DispatcherServlet] - DispatcherServlet with name 'dispatcherServlet' processing POST request for [/ssmmaven/ssm/sendComplexJsonStr]
2017-09-14 13:58:53,583 [http-apr-8080-exec-2] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] - Looking up handler method for path /ssm/sendComplexJsonStr
2017-09-14 13:58:53,584 [http-apr-8080-exec-2] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] - Returning handler method [public com.lin.domain.User com.lin.controller.UserController.sendComplexJsonStr(com.lin.domain.UserExt)]
2017-09-14 13:58:53,584 [http-apr-8080-exec-2] DEBUG [org.springframework.beans.factory.support.DefaultListableBeanFactory] - Returning cached instance of singleton bean 'userController'
2017-09-14 13:58:53,586 [http-apr-8080-exec-2] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor] - Reading [class com.lin.domain.UserExt] as "application/json;charset=UTF-8" using [org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@9660915]
UserExt [goods=Goods [id=null, price=2998元, name=商品电视机], getUserId()=666, getUserName()=卡丽熙, getUserPassword()=12138, getUserEmail()=888888@gmail.com, toString()=User [userId=666, userName=卡丽熙, userPassword=12138, userEmail=888888@gmail.com], getClass()=class com.lin.domain.UserExt, hashCode()=12793969]
前端发送的json对象字符串的名字是:卡丽熙
2017-09-14 13:58:53,591 [http-apr-8080-exec-2] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor] - Written [UserExt [goods=Goods [id=null, price=2998元, name=商品电视机], getUserId()=666, getUserName()=卡丽熙, getUserPassword()=12138, getUserEmail()=888888@gmail.com, toString()=User [userId=666, userName=卡丽熙, userPassword=12138, userEmail=888888@gmail.com], getClass()=class com.lin.domain.UserExt, hashCode()=12793969]] as "application/json;charset=UTF-8" using [org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@9660915]
2017-09-14 13:58:53,592 [http-apr-8080-exec-2] DEBUG [org.springframework.web.servlet.DispatcherServlet] - Null ModelAndView returned to DispatcherServlet with name 'dispatcherServlet': assuming HandlerAdapter completed request handling
2017-09-14 13:58:53,592 [http-apr-8080-exec-2] DEBUG [org.springframework.web.servlet.DispatcherServlet] - Successfully completed request
2017-09-14 13:58:55,038 [http-apr-8080-exec-5] DEBUG [org.springframework.web.servlet.DispatcherServlet] - DispatcherServlet with name 'dispatcherServlet' processing POST request for [/ssmmaven/ssm/sendJsonListStr]
2017-09-14 13:58:55,039 [http-apr-8080-exec-5] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] - Looking up handler method for path /ssm/sendJsonListStr
2017-09-14 13:58:55,040 [http-apr-8080-exec-5] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] - Returning handler method [public java.util.List<com.lin.domain.User> com.lin.controller.UserController.sendJsonListStr(java.util.ArrayList<com.lin.domain.User>)]
2017-09-14 13:58:55,041 [http-apr-8080-exec-5] DEBUG [org.springframework.beans.factory.support.DefaultListableBeanFactory] - Returning cached instance of singleton bean 'userController'
2017-09-14 13:58:55,046 [http-apr-8080-exec-5] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor] - Reading [java.util.ArrayList<com.lin.domain.User>] as "application/json;charset=UTF-8" using [org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@9660915]
User [userId=111, userName=卡丽熙, userPassword=12138, userEmail=888888@gmail.com]
User [userId=222, userName=瑟太后, userPassword=23222, userEmail=7777777@gmail.com]
User [userId=333, userName=三傻, userPassword=54323, userEmail=934333@gmail.com]
2017-09-14 13:58:55,058 [http-apr-8080-exec-5] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor] - Written [[User [userId=111, userName=卡丽熙, userPassword=12138, userEmail=888888@gmail.com], User [userId=222, userName=瑟太后, userPassword=23222, userEmail=7777777@gmail.com], User [userId=333, userName=三傻, userPassword=54323, userEmail=934333@gmail.com]]] as "application/json;charset=UTF-8" using [org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@9660915]
2017-09-14 13:58:55,058 [http-apr-8080-exec-5] DEBUG [org.springframework.web.servlet.DispatcherServlet] - Null ModelAndView returned to DispatcherServlet with name 'dispatcherServlet': assuming HandlerAdapter completed request handling
2017-09-14 13:58:55,058 [http-apr-8080-exec-5] DEBUG [org.springframework.web.servlet.DispatcherServlet] - Successfully completed request
2017-09-14 13:58:56,612 [http-apr-8080-exec-6] DEBUG [org.springframework.web.servlet.DispatcherServlet] - DispatcherServlet with name 'dispatcherServlet' processing POST request for [/ssmmaven/ssm/sendArrayStr]
2017-09-14 13:58:56,613 [http-apr-8080-exec-6] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] - Looking up handler method for path /ssm/sendArrayStr
2017-09-14 13:58:56,613 [http-apr-8080-exec-6] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] - Returning handler method [public com.lin.domain.User com.lin.controller.UserController.sendArrsyStr(java.lang.String[])]
2017-09-14 13:58:56,613 [http-apr-8080-exec-6] DEBUG [org.springframework.beans.factory.support.DefaultListableBeanFactory] - Returning cached instance of singleton bean 'userController'
数组长度------>4
遍历输出数组的值是:------>风吹
遍历输出数组的值是:------>草地
遍历输出数组的值是:------>见牛羊
遍历输出数组的值是:------>哗哗哗
2017-09-14 13:58:56,624 [http-apr-8080-exec-6] DEBUG [org.springframework.web.servlet.mvc.method.annotation.RequestResponseBodyMethodProcessor] - Written [User [userId=null, userName=哗哗哗, userPassword=null, userEmail=null]] as "application/json;charset=UTF-8" using [org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@9660915]
2017-09-14 13:58:56,624 [http-apr-8080-exec-6] DEBUG [org.springframework.web.servlet.DispatcherServlet] - Null ModelAndView returned to DispatcherServlet with name 'dispatcherServlet': assuming HandlerAdapter completed request handling
2017-09-14 13:58:56,624 [http-apr-8080-exec-6] DEBUG [org.springframework.web.servlet.DispatcherServlet] - Successfully completed request

springMVC前后端数据交互相关推荐

  1. 前后端数据交互方法 汇总

    这篇文章给大家介绍几种常用的前后端数据交互方法,并给出使用建议.以提高前后端协同开发的效率.非常的详细,推荐给小伙伴们,有需要的小伙伴可以参考下. 1.HTML赋值 输出到 Element 的 val ...

  2. 干货 | 万字长文全面解析GraphQL,携程微服务背景下的前后端数据交互方案

    作者简介 古映杰,携程研发高级经理,负责前端框架和基础设施的设计.研发与维护.开源项目react-lite和react-imvc作者. 前言 随着多终端.多平台.多业务形态.多技术选型等各方面的发展, ...

  3. ajax连接前后端原理,前后端数据交互方法和原理

    前后端数据交互方法和原理 发布时间:2018-10-28 11:25, 浏览次数:742 对于想要搞web的新手而言,会用html+css+javascript实现一个页面没什么太大的困难,但是想要前 ...

  4. 详解 AJAX-SpringBoot 前后端数据交互

    详解 AJAX-SpringBoot 前后端数据交互 1. Ajax 概述 Ajax 的英文全称是 "Asynchronous JavaScript and XML",即 &quo ...

  5. 前后端数据交互——ajax技术

    在实际开发过程中,前端页面通常需要根据后台数据实现动态生成和实时更新,因此如何实现前后端数据交互成了开发过程中的难题. 现将使用ajax技术解决前后端数据的交互: (1)ajax技术介绍: ajax一 ...

  6. 前后端数据交互|分页查询|表格-双向绑定|get和post的区别

    目录 1 前后端数据交互 1.1 前端代码 部署在 前端服务器 1.2 前端代码 在 浏览器展示(只展示页面,没有数据)----自给自足 1.3 前端/浏览器 请求 后端数据 (后端死数据)----给 ...

  7. 软件测试的交互,软件测试--前后端数据交互

    作为一个合格的软件测试人员, 能够熟练定位bug的位置是属于前端还是后端,是必备技能之一.所以就需要明白前后端数据是怎么进行交互的. 一.网站数据处理主要分为三层 第一层,表示层,这部分可以用HTML ...

  8. 基于axios前后端数据交互

    基于axios前后端数据交互 一.get 1.前端 <!DOCTYPE html> <html lang="en"> <head><met ...

  9. 超详细总结:前后端数据交互原理

    最近开始接触前后端的一些知识,查了很多资料,今天把互联网产品的前后端数据交互做个总结留做笔记. 互联网产品的前后端数据交互是通过一个通讯协议完成.前后台交互的协议主要包括HTTP,FTP,SMTP,T ...

最新文章

  1. Yann LeCun:未来几十年AI研究的最大挑战是「预测世界模型」
  2. 存储知识:数据一致性、分级存储、分层存储与信息生命周期管理
  3. 【转载】SAP Oracle ERP产品的比较
  4. 生物科学数据分析和数据管理本体论
  5. LeetCode 283. Move Zeroes
  6. 19.1.27 laravel框架学习笔记
  7. flv 视频 文件 下载
  8. 【软技能】完全写作指南--演讲
  9. VB获取一个文件夹中指定的文件或文件夹名称到列表
  10. 小程序商家如何做低成本裂变活动?
  11. ffmpeg+mencoder环境搭建和视频处理总结(4m/1/99)
  12. 博弈论python实例_博弈论读书笔记(七)贝叶斯博弈举例和显示原理
  13. 在企业中应用的区块链应能够扩容以满足业务条线的需求
  14. 写个爬虫爬取p站画师的画作
  15. uni-app 商城 的sku算法(vue)
  16. leetcode,605题【种花问题】
  17. 关于我计划开始学习编程这码事
  18. Revit二次开发学习笔记
  19. 火焰图FlameGraphs部署使用
  20. i--和--i的区别

热门文章

  1. 开运算—lhMorpOpen
  2. database/sql
  3. 什么是计算机动画设计,什么是计算机动画制作
  4. C#实现将Chart图表生成JPG图片的方法
  5. 研发团队中最合适的开发测试比是多少?
  6. 开启xmp1还是2_英雄联盟手游高帧率模式怎么开启-高帧率模式开启方法
  7. strcpy和strncpy区别
  8. 基于java+SpringBoot+HTML+Mysql学生宿舍管理系统
  9. Pytorch:基于转置卷积解码的卷积自编码网络
  10. Collectors