出现栈内存溢出的常见原因有2个:
1. 函数递归调用层次过深,每调用一次,函数的参数、局部变量等信息就压一次栈,并且没有及时出栈。
2. 局部静态变量体积太大
第二种情况也比较常见,比如在函数里定义很大的局部变量(例如大数组),这种情况可以将局部变量改为静态变量(实质上也是全局变量)。
我这里遇到的应该就是函数里定义很大的局部变量
下面我来
SHOW MY CODE
我使用的SPRINGmvc ,springboot跑的项目,然后输入映射的地址控制台报错:页面地址也报错
下面是页面地址报错:
控制台报错:
---------------------------------------------------
0*00
下面是我写的controller的方法,映射地址:"/download"
0*01
下面是我打印的list内容,但是改成return list,就不行报错栈溢出;
[</div>, <div class="content-c">
<a target="_blank" :href="'/news/newsDetails/' + item.id" class="img-left"> <img :src="item.picUrl" alt=""> </a>
<div class="content-right">
<div class="t-c-box">
<a target="_blank" :href="'/news/newsDetails/'+item.id" class="p-title" v-html="item.title"></a>
<p class="p-content" v-html="item.summary"></p>
</div>
<div class="time-box">
<div class="time-left">
<span> <i class="iconfont icon-bofang-copy"></i> <span> {{item.source?item.source:"btc123原创"}} <span style="font-size: 18px">.</span> <span>{{item.modifiedText}}</span> </span> </span>
</div>
<div class="tag-right">
<span><i class="iconfont icon-chakan"></i> <span>{{item.browseNum}}</span></span>
<!--<i class="iconfont icon-biaoqian-copy"></i>-->
<!--<span>{{item.tag}}</span>-->
</div>
</div>
</div>
</div>, <div class="content-c">
<a target="_blank" :href="'/news/newsDetails/'+item.id" class="img-left"> <img :src="item.picUrl" alt=""> </a>
<div class="content-right">
<div class="t-c-box">
<a v-if=" item.displayStatus == 2 " :href="'/news/newsDetails/'+item.id" class="p-title p-title-top" target="_blank" v-html="'<span>置顶</span>' + item.title "></a>
<a v-if=" item.displayStatus != 2 " :href="'/news/newsDetails/'+item.id" class="p-title p-title-top" target="_blank" v-html="item.title "></a>
<p class="p-content" v-html="item.summary"></p>
</div>
<div class="time-box">
<div class="time-left">
<span> <i class="iconfont icon-bofang-copy"></i> <span> {{item.source?item.source:"btc123原创"}} <span style="font-size: 18px">.</span> <span>{{item.modifiedText}}</span> </span> </span>
</div>
<div class="tag-right">
<span><i class="iconfont icon-chakan"></i> <span>{{item.browseNum}}</span></span>
<!--<i class="iconfont icon-biaoqian-copy"></i>-->
<!--<span>{{item.tag}}</span>-->
</div>
</div>
</div>
</div>]
经过讨论和分析,这个list里面的对象是Element,打印system.out是可以看到都数据的,
但是一改为 return就报错了,应该就是list.add(参数)有问题.
回过头又去改动代码,吧element.tostring 转为字符串再保存到list集合
如下操作:
然後运行项目,输入localhost:8001/download
成功返回list;