为了账号安全,请及时绑定邮箱和手机立即绑定

大家是如何从一个页面跳转到另一个页面上,并且展示响应的数据的?

大家是如何从一个页面跳转到另一个页面上,并且展示响应的数据的?

慕的地8271018 2019-03-23 23:19:39
比方说我现在有两个页面,我从第一个页面点击一个链接(传递一个id)跳转到另一个页面并展示这个id对应的数据,这该怎么实现呢?我现在的做法就是在action里面获取传递进来的id,然后查询对应的数据然后通过request.setAttribute的方式将查询出来的值放进去,然后在jsp里面通过EL表达式取出来,不知道是否还有其他的做法呢?
查看完整描述

3 回答

?
临摹微笑

TA贡献1982条经验 获得超2个赞

可以通过服务器端跳转,struts有个actionchian,反正就是可以共享request信息的方式,具体也记不得了


查看完整回答
反对 回复 2019-04-16
?
蝴蝶刀刀

TA贡献1801条经验 获得超8个赞

一般好像都是这么干的。

  • 一个链接上包含一些参数。

  • 然后请求到对应的控制器,由控制器查询数据。

  • 服务器内部请求转发,forward到对应的模板页。

  • 模板页使用jstl标签或者java脚本对数据进行渲染。

还有一种常见的方案是但用的没上面这种多。

  • 一个链接包含一些参数。

  • 然后请求直接响应到这个页面,在这个页面上直接将参数放到DOM中,像这样<input type="hidden" value="${query}">

  • 之后通过js读取DOM中的请求参数,发起Ajax请求,获取数据(多为json数据,也有xml或者直接字符串).

  • 在控制器中查询数据,然后通过org.json等工具包,转成json字符串,将字符串作为响应正文发送。

  • js通过回调函数读取数据渲染

多说两句,一个页面的请求数最好不要太多,浏览器对同一个域名的请求是有并发数量限制的(http1.1, 好像新的http2没有这个问题)。
Ajax请求的数据太多导致等待时间较长时,最好准备一个loading的动画

另外很多时候是两者混用的。

例如一个 个人中心 之类的页面。

  • 页面头部个人资料之类的信息,通过第一种直接在响应时显示。

  • 旁边的tab标签每点击一个,内容展示的DOM通过AjaxLload一次。

当然还有一种做法是把所有数据都放到DOM里,点击tab标签,通过控制DOM的display进行展示。


查看完整回答
反对 回复 2019-04-16
  • 3 回答
  • 0 关注
  • 2173 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号