SpringMVC如何处理Ajax请求和返回Json对象

  前边我们讲过了在从表单数据到处理方法入参的转换之间的一系列过程,即先要将表单信息及目标方法入参放入到一个名为DataBinder的对象中,然后调用这个对象的ConversionService中的转换器进行数据类型的转换和格式化(然后将请求的表单信息放入到目标方法入参中),然后再调用ConversionService的Validator组件进行数据的逻辑合法性的检查。最后将绑定的入参对象和产生的异常对象赋值给一个BindingResult对象中,并且可以在目标方法中获取到这个对象。在以上的过程中,我们使用到了自定义转换器和JSR303数据校验标准。

  今天我们来讲一讲SpringMVC如何处理Ajax请求并且返回Json对象。

  我们知道Ajax是一种与服务器交换数据并且更新部分网页的技术,在不刷新页面的情况下。显而易见的好处是,我们在进行用户注册的时候,当我们输入用户名时,鼠标离开这个输入框便可以输入下一个密码内容,同时用户名被发送到服务器进行数据校验,若校验成功则可以提示用户名通过。这样子我们就不必单纯的发送一个请求而导致刷新了整个页面,因为刷新整个页面之后,已经填入的内容就都不见了。

  对于SpringMVC而言,我们可以导入必要的三个jackson的jar包,然后在目标方法上添加一个@ResonseBody的注解,这样无论目标方法返回的是什么类型的值,最终都会转化为Json类型的对象返回给前台页面。Json类型的对象我们可以使用json[i]的for循环来遍历这个json对象,和数组的遍历基本一致

  我们知道SpringMVC是使用HttpMessageConverter来将请求信息转换为一个Java对象或者将一个Java对象转换为一个响应信息。我们可以在目标方法上添加@RequestBody和@ResponseBody来使用这个HttpMessageConverter。处理请求时,由合适的消息转换器将请求报文绑定为方法中的形参对象,在这里,同一个对象就有可能出现多种不同的消息形式,比如json和xml。同样,当响应请求时,方法的返回值也同样可能被返回为不同的消息形式,比如json和xml。我们可以在发送Ajax请求的地方设置发送请求的格式,如String或者Json等。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值