SpringMvc3

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. 所有验证通过,表单提交

 

posted @ 2023-01-12 22:08  月丫湾  阅读(35)  评论(0)    收藏  举报