Servlet及前端JSP中的JSON简单传递

在后台servlet中,若需要将json传至前台,可以将json字符串通过request的setAttribute方法进行传值,通过转发交接给JSP页面(其实,在tomcat等容器中,除了转换和编译阶段,servlet跟JSP区别也不是太大),测试代码如下:

1         request.setAttribute("jsonstr", respMessage);
2         request.getRequestDispatcher("/WEB-INF/jsp/showPhotos.jsp").forward(request, response);

然后,在JSP中需要将其读取出来,在JavaScript中,读取方法如下:

 1  <script type="text/javascript">
 2  //{"currentUser":"zhang","success":"true","photoList":[{"id":"4545","createUser":"sere","modifyUser":"zhang","dr":"0"}]}
 3
 4  //上面的是我后台传过去的json,下面是JavaScript的解析方法
 5      var jsonstr = ‘<%=request.getAttribute("jsonstr")%>‘;
 6      var obj = eval(‘(‘ + jsonstr + ‘)‘);
 7      //json中的属性
 8     alert(obj.success);
 9
10     //json中的list
11     alert(obj.photoList[0].id);
12  </script>

使用这个方法的话,需要注意:request是jsp中的内置对象,若js是单独文件,可能会出现取值为null的情况,可以在jsp中设置一个隐藏域,然后通过getElemetById之类的方法调用其中的value值

时间: 2024-08-06 21:44:07

Servlet及前端JSP中的JSON简单传递的相关文章

jsp中使用javabean简单例子

在JSP中使用JavaBean以后,可以实现HTML代码和Java代码的分离,是JSp更易于开发和维护.因此JavaBean成了JSP程序员必备的利器.虽然javaBean是java类,但是它也有自己的一些特性(1)JavaBean是一个public类(2)JavaBean 有一个不带参数的构造方法(3)JavaBean中的属性通过get和set方法进行操作 例如:定义个CircleArea的JavaBean用于封装圆面积的计算逻辑,以后凡是用到圆面积的计算方法均可使用该JavaBean来完成,

【ModelMap】jsp中显示springmvc modelmap传递的对象

最近在做一个小网站,功能非常基础,决定用springmvc搭建. 遇到一个问题,在controller向前端传值时,比如使用ModelMap传了一个字符串,modelmap.addattribute("msg", "hello"),那么在jsp端,直接使用${msg}就可以显示.接着,如果我传递了一个对象,依然可以使用${obj.name}这样的方法来显示该对象的各个属性.然而更多情况下,都需要显示列表,所以我传递了一个List<User>对象,但是在解

java后台配置信息如何传递到前端jsp页面

需求:  系统前端jsp使用的是easyUi的datagrid展示了一些任务信息,任务信息中有个状态信息显示的值是数字, 需要根据后台保存的映射关系,将状态显示为描述信息. 原来的jsp前端显示: 解决方案,在后台使用创建json数据,然后传递到前台jsp页面中,并使用eval解析后获取值对应的描述,操作如下: 1. 创建json数据(java) //任务列表 public static final String TASK_PENDING = "0"; //命令处理成功 public

在JSP中使用Echarts的简单例子

引子 ECharts是百度出品的,一个使用 JavaScript 实现的开源可视化库.程序员在Web页面上引入并稍作配置就能做出漂亮的数据图表. 本篇文章简单介绍一下如何在JSP中使用Echarts,例子图如下: 上手 图表显示是需要数据的,但是Echarts官网教程中为了演示方便直接在页面js中填入数据,如Demo-未来一周气温变化所示."周一.周二.."等数据都直接在页面写好: xAxis : [ { type : 'category', boundaryGap : false,

在Servlet中使用JSON

在Servlet中使用JSON,和上篇的使用相同,只不过多了配置web.xml的内容 servlet代码如下: import java.io.IOException; import java.io.PrintWriter; import java.util.ArrayList; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import ja

JSP中(servlet)如何使用定时作业Quartz框架

以下介绍的是在JSP或者servlet中使用定时作业Quartz框架,这篇文章是我大学第二次实习时写的,当时带我的师傅维护一个旧业务系统时需要定时作业处理,因为我之前大三实习的时候接触过,知道有这么个东西,所以师傅交给我处理,特意给我说让我整理出一个文档来交给他作为以后他的参考,因为之前是在spring中集成的,那比较简单实现,现在让我在JSP中实现,不是想象的那么顺利,利用一晚上搞定了,以下为我为师傅整理的参考文档,特意翻出来和分享给大家: 目录 1.JSP项目中引入4个jar包 1 2.we

struts2、servlet中返回json数据格式

json数据格式在现在的web开发中应用的是非常多的,基本上现在都用json在前后传数据.那么在struts和servlet中这么返回json格式呢?JSON数据在传递过程中,其实就是传递一个普通的符合JSON语法格式的字符串而已,所谓的"JSON对象"是指对这个JSON字符串解析和包装后的结果,所以我们要做的就是构造一个满足JSON格式的字符串就好了,这是原理切记切记啊,下面我已代码的方式演示几种方法. 需求:我们从前端输入用户名+密码,后端以json格式返回用户名+密码,前端ale

用Servlet与JSP中实现分页查询

这个题目,总共分4个部分 1.查询总页数,把页码显示在页面上 2.把每页的内容显示在页面上 3.首页,尾页,上一页,下一页 4.下拉列表中的页数,(根据页数变动,选中第几页提交到第几页) 详解如下:(一部分代码在servlet中,一部分代码在JSP中) Servlet package com.lianxi; import java.io.IOException; import java.util.ArrayList; import javax.servlet.ServletException;

在Java代码(非JSP及Action,Servlet,Controller)中获得WebRoot的物理路径

在开发Web方面的应用时, 经常需要获取 服务器中当前WebRoot的物理路径; 如果是Servlet , Action , Controller, 或则Filter , Listener , 拦截器等相关类时, 我们只需要获得ServletContext, 然后通过ServletContext.getRealPath("/")来获取当前应用在服务器上的物理地址. 如果在类中取不到ServletContext时, 有两种方式可以做到 1) 利用Java的类加载机制 调用 XXX.cla