Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在两个JSP之间传递大字符串而不丢失内容

如何在两个JSP之间传递大字符串而不丢失内容
EN

Stack Overflow用户
提问于 2014-07-01 07:05:08
回答 2查看 1.8K关注 0票数 0

我有一个非常大的json字符串,我正试图通过一个隐藏的表单方法将它从一个jsp传递到另一个。但是当我在我的另一个jsp中收到它时,只有一半的字符串出现,我确实知道它非常大。我的results.jsp有不同的id,在单击其中任何一个时,它都会转到details.jsp,它会通过一个隐藏的形式传递所单击的id和整个字符串。我认为POST方法对传递的大小有限制,因此我的整个字符串都不会被发送。

results.jsp

代码语言:javascript
运行
AI代码解释
复制
       <head>
            <script type="text/javascript">
                    function submitHiddenForm(Key) {

                   document.getElementById("Key").value = Key;
                   document.myForm.submit();

               }
                </script>
        </head>
    <body>

        <div class="list-group">
            <% 
                List<ComparisonResultDTOarr> ls = diff.getComparisonResultDTOarr();

                for(int i = 0;i<ls.size();i++)
                {
                List<AuditItemLogsDTOArr> lsinner = ls.get(i).getAuditItemLogsDTOArr();
                %><a href="#" onclick="submitHiddenForm('<%=lsinner.get(0).getKeyAsString()%>')" class="list-group-item"> 
                <%out.println(lsinner.get(0).getKeyAsString());%></a><%
                }
            %>
       </div>

        <form action="details.jsp" method="post" name="myForm">
         <input type="hidden" name="Key" id="Key"><br>
         <input type="hidden" name="jsonString" id="jsonString" value=<%=(String)request.getAttribute("jsonstring") %>>
        </form>
    </body>

在我的details.jsp中,我只是简单地获取参数

代码语言:javascript
运行
AI代码解释
复制
<%
String Key = request.getParameter("Key");
String jsonstr = (String)request.getParameter("jsonString");
%>

并在段落中显示jsonstr:

代码语言:javascript
运行
AI代码解释
复制
<p><%=jsonstr %></p>

但它是不完整的,只有部分显示。我知道这有点令人困惑,所以如果你需要更多细节,请让我知道。

P.S -I不能使用dispatcher,因为它需要在ID上单击。

EN

回答 2

Stack Overflow用户

发布于 2014-07-01 07:15:14

代码语言:javascript
运行
AI代码解释
复制
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<input
    type="hidden" name="jsonString" id="jsonString"
    value="<c:out value="${jsonstring}">">

当然,HTML属性value需要引号,而JSP标记<c:out>转义了要转义的内容,比如字符串中的"。会抑制转义。

${jsonString}是EL,表达式语言,可以在整个过程中使用,简化了一切。

对于非常大的字符串,我建议使用其他数据流。也许可以使用JavaScript的Ajax,但是您似乎需要将以前的JSP修改为仅使用过去的查询参数。

票数 1
EN

Stack Overflow用户

发布于 2014-07-01 11:43:09

考虑到Joop Eggen之前的回答和对答案的评论,我认为问题可能如下:

JSON数据是将数据传递到页面的一种选择

我建议的第一种方法是因为你有没有转义的JSON字符串,当将它显示为HTML时,它可能会丢失。在这种情况下,您需要小心,以便在传递它的JSP和HTML上下文中正确地转义它。对于我的JSON数据,我就遇到过这个问题。我选择了避开JSON数据。此外,我建议在日志中多次打印数据,以确认其存在。如果数据很大,请确认其长度。

第二种方法,我从你的对话中得到的另一种方法是使用会话来存储字符串数据。如果您必须多次使用数据,请将其保留在会话中,这将很容易处理。

您的解决方案将是上述两种方法的组合。如果你同时使用它们,你可以很容易地做到。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24504298

复制
相关文章
struts2解决jsp与jsp页面之间参数的传递
image.png 点击修改,相应工资项的信息传递至item_update.jsp显示 备注:由于http协议的约束,页面之间只能传递字符串,不能传递对象。 image.png item_list.jsp <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@ taglib uri="/struts-tags" prefix="s"%> <% String path = request.getContextP
week
2018/08/27
4.5K0
struts2解决jsp与jsp页面之间参数的传递
开发 | 如何在小程序页面之间,传递数据和变量?
最近组里开发小程序,遇到了一个困扰前端很长时间的话题:页面之间,如何传递数据和变量?
知晓君
2018/08/01
1.1K0
开发 | 如何在小程序页面之间,传递数据和变量?
美好“如祺”而至,安全如影随形
昨天,网约车家族又迎来了一个新成员 —— 如祺出行。 这个由广汽与腾讯等合作方联手打造的共享出行产品,将在广州正式推出市场,以粤港澳大湾区为核心逐步向全国推广,计划一年内开拓5个城市,投放近一万辆新能源车型。 腾讯拿出了用户服务和营销、车联网和平台运营、地图和云服务、生态服务和安全五大核心能力,支持如祺出行。安全能力作为其他四大能力的基石,对出行平台的业务发展至关重要。腾讯安全在如祺出行上也拿出了一整套的解决方案,涵盖安全咨询、应用安全、风控安全,从战略视角帮助如祺出行构建全面的安全体系。 那么
腾讯安全
2019/09/16
1.6K0
美好“如祺”而至,安全如影随形
如何在 Python 中查找两个字符串之间的差异位置?
在文本处理和字符串比较的任务中,有时我们需要查找两个字符串之间的差异位置,即找到它们在哪些位置上不同或不匹配。这种差异位置的查找在文本比较、版本控制、数据分析等场景中非常有用。本文将详细介绍如何在 Python 中实现这一功能,以便帮助你处理字符串差异分析的需求。
网络技术联盟站
2023/06/01
3.6K0
Activity之间传递参数
发送 intent.setClass(Bmi.this, Report.class); Bundle bundle = new Bundle(); bundle.putString("KEY_HEIGHT", field_height.getText().toString()); bundle.putString("KEY_WEIGHT", field_weight.getText().toString()); intent.putExtras(bundle); startActivity(intent);
用户1075292
2018/01/23
6050
sed提取两个关键字之间的内容_python提取文本指定内容
如果上述代码是列表页中要获取的部分代码,现在要获取 所有列表页 的tbody标签中每个tr标签下 除第三、四个td标签(这2个中可能有数据,也可能无数据) 外的其他4个td标签中的数据,该如何获取?
全栈程序员站长
2022/10/04
1.7K0
如何实现在Excel表格中删除汉字而不破坏其他内容?
方法一: 先将数据复制到WORD中, 在WORD中,编辑/替换 “查找内容”输入:[一-龤]      (带中括号) “替换为”输入:/ 勾选“使用通配符” 点“全部替换” 然后再将数据复制回EXCEL。 附: 龤:ALT+64922 WORD中是:ALT+40868 方法二: =REPLACE(A1,MATCH(” “,MIDB(A1,ROW($1:$100),1),),LENB(A1)-LEN(A1),”/”) 方法三: 若你汉字均在前面,在b1输入公式:=right(a1,l
用户1272546
2018/06/04
2.8K0
如何实现在Excel表格中删除汉字而不破坏其他内容?
方法一: 先将数据复制到WORD中, 在WORD中,编辑/替换 “查找内容”输入:[一-龤]      (带中括号) “替换为”输入:/ 勾选“使用通配符” 点“全部替换”
用户1191760
2019/02/27
3.7K0
如何在DataGrid里面产生滚动条而不滚动题头
我们在开发的时候一定遇到,使用DataGrid的时候由于不想分页(数据没有那么多)但是又显示不在一页里面,此时我们希望在DataGrid里面出现一个滚动条,可以上下滚动DataGrid里面的数据而不用上下滚动页面,由于写本文的目的是为了说明如何实现,所以对于细节性的问题读者可以自己思考完成(比如:既要分页又要滚动等等)。为了可以滚动DataGrid我们需要一个可以让客户端的Table滚动js脚本(该js代码我是从CodeProject上面下载的),但又不能滚动Table的题头(也就是第一行)。我们都知道Da
阿新
2018/04/13
1.6K0
ResourceManager因为块丢失而重启失败
在非HA情况下,如果HDFS中RM-Restart相关的块丢失,会导致RM无法启动。
AAACCC
2019/12/06
1.8K0
前端页面之间传递参数
跨页面传递参数 这里有假如传递一个参数,在另一个页面接收时,只需要js中写入如下代码: localhost:8080/index.jsp?id=1 function showWindowHref
微醺
2019/01/17
1.2K0
《JSP极简教程》如何在JSP页面输出HTML文本而不被转义innerHTML与valuec:out escapeXml='false'pre标签
讲3种情况: innerHTML与value /** * Created by jack on 2017/3/29. */ define(function (require) { "use strict"; require('meditor'); $(function () { var parser = new Mditor.Parser(); // var blogContent = document.getElementById('blog
一个会写诗的程序员
2018/08/20
1.7K0
威而鲨(WireShark)之如封似闭
Capture Filter是指在捕捉时就对报文进行过滤,由此,Wireshark对不感兴趣的报文不再记录和显示。其优点是可以节省本地存储和显示资源,适合于报文数目过于庞大而对本地计算资源带来冲击的场合。
释然IT杂谈
2022/08/23
3530
威而鲨(WireShark)之如封似闭
jsp中在href中传递参数
<% Configuration conf = new Configuration(); URI uri = new URI("hdfs://192.168.0.52:9010"); FileSystem fileSystem = FileSystem.get(uri, conf); //System.out.println("Hdfs directory is"+"\n"); Path src1 = new Path("hdfs://192.168.0.52:9
闵开慧
2018/03/30
4.8K0
Elasticsearch如何保证数据不丢失?
上篇文章提到过,在elasticsearch和磁盘之间还有一层cache也就是filesystem cache,大部分新增或者修改,删除的数据都在这层cache中,如果没有flush操作,那么就不能100%保证系统的数据不会丢失,比如突然断电或者机器宕机了,但实际情况是es中默认是30分钟才flush一次磁盘,这么长的时间内,如果发生不可控的故障,那么是不是必定会丢失数据呢? 很显然es的设计者早就考虑了这个问题,在两次full commit操作(flush)之间,如果发生故障也不能丢失数据,那么es是如何
我是攻城师
2018/05/15
6K0
MySQL如何保证数据不丢失
保证redo log和binlog可以持久化到磁盘,就可以确保MySQL在异常重启后进行数据恢复。
shysh95
2022/04/07
1K0
MySQL如何保证数据不丢失
2021年大数据Kafka(八):Kafka如何保证数据不丢失
如果broker迟迟不给ack,而Buffer又满了。开发者可以设置是否直接清空Buffer中的数据。
Lansonli
2021/10/11
1K0
点击加载更多

相似问题

如何在两个jsp页面之间传递字符串?

42

如何在两个jsp页面之间传递字符串?

10

向JSP页面添加新内容,而不丢失现有的动态生成的内容

14

在页面之间移动而不丢失页面内容- React JS

211

切换类而不丢失内容

14
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档