SSM后台数据与前端(PC、M站、Android、IOS)的交互——页面渲染

一、介绍

对于后台服务器开发者来说,更多的是处理客户端发过来的请求和业务逻辑,很少会有人考虑页面的渲染问题。

以前的大部分后台开发人员最多也就是在 jsp 页面或者其他视图渲染框架来渲染PC端的页面,而对于其他的客户端,他们经常无能为力。如果PC端不是采用前后端分离的架构,是采用 jsp 或者其他视图框架来渲染页面(所谓的单体应用),后台开发人员就要对相同的请求处理两次(一份数据传给PC端用,一份数据返回给其他客户端用(Android、IOS、M站)),这样就显得有点麻烦,具体情况看下面代码。

二、用Jstl来渲染视图

(1)、后台Controller处理代码

这里写图片描述

(2)、jstl渲染视图页面

这里写图片描述

对于使用这种方式渲染页面,如果仅仅存在PC端,这种方法没有问题。但如果对于Android和IOS客户端,与它们进行数据交换的最好方式是用 json,所以刚刚上面的Controller并不合适,还要重新再写一个返回 json 字符串的方法。

三、使用json来实现数据格式的统一

(1)、后台Controller处理代码

这里写图片描述
此处使用@ResponseBody注解,该注解可以将对象自动转为json字符串,但需要jackson包的支持,如果不添加jackson包,则会报如下错误:
这里写图片描述
maven工程可以在pom.xml文件中添加如下依赖:
这里写图片描述
再次请求结果,会返回json字符串,如下图所示:
这里写图片描述
但这样直接将一个对象进行json字符串返回并不是一个很好的办法,因为数据结构可能会变动,而且对数据的增删改查的结果也无从知晓,所以,最好对返回对象进行一次数据的封装,封装成统一的数据格式,如下所示:
这里写图片描述
Controller中的方法改为如下:
这里写图片描述
封装完后的json格式为如下,具有通用性:
这里写图片描述

(2)、ajax渲染视图页面

页面采用ajax方式发送请求,并用解析数据:
这里写图片描述
这里写图片描述

这种方式的好处就是,后台可以用统一的 json 结构和PC端、客户端进行数据的交互,但本文中,PC端对ajax获取得到的数据只是用简单的dom操作进行页面渲染,现在很少用这种方式来处理数据,有兴趣的话可以查看前端的模板引擎。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

止步前行

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值