SpringMVC-第三章
JSON JavaScript Object Notation(JavaScript 对象表示法)
JSON 是存储和交换文本信息的语法,类似 XML,比 XML 更小、更快,更易解析
将Java对象转换为特殊格式的字符串(JSON串),主要用于与前端页面的交互
Java --- JSON --- JS
1. gson --- google,Android和Java交互
2. JackSon --- SpringMVC,默认的JSON处理方法
3. FastJSON --- alibaba,号称世界上最快的JSON转换
FastJSON 的使用:
1. 导包
2. 直接用对象JSON,调用方法
字符串 到 JSON / JSON 到 字符串
对象
List
Map
准备web新项目Shop_SSM
AJAX
Asynchronous(异步) Javascript And Xml
无刷新(局部刷新)
后台传统方式的web请求(同步请求):等待服务器端响应;刷新
ajax异步请求:发送请求的同时,可以在页面上执行其他操作 无刷新 提高用户体验度
jQuery实现AJAX
1.引入jquery脚本库
2.$.ajax({…});
3.几个属性:
url: ajax要发送请求的一个地址
相对路径:user/login.do 自动拼接地址 /项目名/user/login.do
绝对路径:/项目名/user/login.do 或 ${pageContext.request.contextPath }/user/login.do
不进行拼接地址操作
data:发送请求的时候,需要携带的参数 key/value
success:请求成功后的回调函数
type:提交方式,默认GET POST
dataType: 预期服务器返回的数据类型,比如json
$.ajax({
url:"xxx.do",
type:"POST",
success:function(data){},
error:function(…){},
dataType:"json"
});
对于以上代码:
a.属性名必须严格按照jQuery规定写,比如url,type
b.属性名:值,中间用逗号分隔开;最后不要逗号
c.属性没有先后顺序
示例:无刷新登录
1. 创建登录按钮,更改类型 提交 为 按钮
2. 引入javaScript 和 jQuery
3. 触发方法login()
4. jQuery集成Ajax
5. 测试-是否到后台
======
6. 测试-传送参数到后台
页面:
后台:
添加ajax错误返回方法,分析错误原因
7. 书写登录逻辑,通过对象HttpServletResponse响应结果给Ajax
8. Ajax逻辑书写
总结:
1. 请求来源于页面,方法回调,并终于页面。闭环
2. 可以没有方法的返回值,没有返回值,就没有界面跳转,从而实现了无刷新操作
3. Controller不再处理界面跳转的需求,交由前台处理,专注代码的开发
4. 基于此技术之一,实现 前端和后台分离 restful
Ajax模板:
SpringMVC集成Ajax返回功能
1. springmvc-servlet.xml配置文件,开启fastJson功能
2. 加上注解 @ResponseBody,表示开始调用springMVC的JSON转换功能
3. 方法的返回值决定了return值的类型,也决定了是什么样类型的值被JSON转译后,回调到Ajax
4. 根据返回值,在前端页面做逻辑的处理,页面的跳转
回想Ajax的功能,异步加载,局部刷新
JackSon 和FastJSON 差异对比
字符串类型 String msg = “true” / “false”
JackSon解析:布尔值 true / false
FastJSON 解析:字符串 “true” / “false”
布尔类型: Boolean bl = true / false
JackSon解析:报错
FastJSON 解析:布尔值
Ajax修改注册
1. 修改form提交,通过方法检查提交条件的状态
onsubmit = “return true” 允许表单提交
onsubmit = “return false” 不允许表单提交
非空验证
2. 使用失去焦点事件,完成验证
账号唯一验证
一次密码验证
二次密码验证
3. 所有验证通过,表单提交
标签:FastJSON,do,JSON,Ajax,ajax,SpringMvc3,页面 From: https://www.cnblogs.com/Lovew2/p/17048089.html