我希望将来自request.getAttribute()的对象存储在HTML5本地存储中的先前JSP中,以便我可以在另一个页面中使用它,因为我不想使用服务器会话来存储属性。怎么做到这一点?我想要存储的对象中有5个字符串,带有getter和setter。
答案 0 :(得分:4)
您可以使用JavaScript localStorage
setItem
和getItem
来实现此目的。
将request paramter
添加到HTML5本地存储。
<script type="text/javascript">
localStorage.setItem('user','${param.user}'); //Where param user is your request parameter from previous jsp.
</script>
现在获取存储到本地存储的值
<script type="text/javascript">
localStorage.getItem('user');
</script>
注意:这仅适用于支持localStorage的浏览器。
检查html5/webstorage以获取更多信息。
<强>更新强> 上面的示例使用字符串存储在localStorage中。要实现作为对象存储,这将需要一些转换或使用混合的可用工具。像Java对象到json到javascript到localstorage或json到本地存储。我还没有测试过这个,但下面的一些链接可能有助于做到这一点
注意:这可能不是在localStorage中存储Java对象的确切方法,或者无论如何都不可能。但我认为可以使用上面的一些技术将Java Object存储在localStorage中。要获取localStorage中的对象,我认为您需要一个代码来解析服务器端(Java)上的对象。