2011-05-09 12 views
0

이전 JSP의 HTML5 로컬 저장소에있는 request.getAttribute()에서 가져온 객체를 저장하려고합니다. 서버 세션을 저장하고 싶지 않기 때문에 다른 페이지에서 사용할 수 있습니다. 속성. 이것을 달성하는 방법? 저장하려는 객체에는 getter 및 setter가있는 5 개의 문자열이 있습니다.자바 객체를 HTML5 로컬 저장소에 저장

답변

3

JavaScript를 사용하여 localStoragesetItemgetItem을 사용하면이 문제를 해결할 수 있습니다.

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> 

참고하면 저장 값을 얻을 수 있습니다.

자세한 내용은 html5/webstorage을 확인하십시오.

업데이트 : 위 예제는 문자열을 사용하여 localStorage에 저장합니다. 객체로 저장하려면 일부 변환이 필요하거나 사용 가능한 도구가 혼합되어 있어야합니다. Java 객체와 마찬가지로 json은 javascript를 사용하여 localstorage에, json은 로컬 저장소에 저장합니다. 나는 아직 테스트하지 않은 있지만 일부 아래 링크는이

주를 수행하는 데 도움이 될 수 있습니다 :이 로컬 스토리지에서 자바 객체를 저장할 수있는 정확한 방법이 될 또는이 할 수 없습니다 어쨌든 될거야. 그러나 위의 기술 중 일부를 사용하여 Java Object를 localStorage에 저장할 수 있다고 생각합니다. localStorage에서 객체를 얻으려면 서버 사이드 (Java)에서 객체를 파싱 할 코드가 필요하다고 생각합니다.

+0

JavaScript를 통해 Java 개체를 저장할 수 없습니다. – Hache

+0

@Hache : 요점이 있는데, 내 게시물을 업데이트했습니다. 자바 객체를 localStorage에 저장하는 방법은 아직 남아 있습니다. 어쨌든 지적 해 주셔서 감사합니다. – ace

+0

@Hache : 확실히 가능합니다. 그들은 오직 String으로 변환 될 것입니다. 따라서 String을 이미 사용하고 있다면 적절한 변환기가 있어야 다시 사용할 수 있습니다. 그러면 문제가 없습니다. – BalusC

관련 문제