gpt4 book ai didi

java - 存储变量以在 Java 中的 View /页面之间安全传递

转载 作者:太空宇宙 更新时间:2023-11-04 10:48:15 25 4
gpt4 key购买 nike

我想在一个java页面/ View 中存储一个变量,然后在另一个页面/ View 中检索它。到目前为止我发现(在服务器端):

存储变量以供以后使用:

public static void setViewDataState(String state) {
ViewData viewData = new ViewData();

//getThreadLocalRequest().getSession(true).setAttribute("viewData", viewData);
viewData.setState(state);
System.out.println("state2 = " + state);
}

要检索变量:

public static String getViewDataState() {
ViewData viewData = new ViewData();
System.out.println("state3 = " + viewData.getState());
return viewData.getState();
}

State2 显示正确值,State3 显示空值。请问这样做的正确方法是什么。我可以在 GWT 中做到这一点;然而,我是java新手。

这就是我在 GWT 中的做法:

public ViewData setViewData(String accountId, String accountLevel,
String ymId, String awId, String adAwardGroup, String adScoutGroup,
String caId, Integer numberOfGroupsStarted, String groupSection,
String hikeRecordID, String hikeMealID, String e1ActivityID,
String penPalID, String groupNAS) {
ViewData viewData = new ViewData();

getThreadLocalRequest().getSession(true).setAttribute("viewData", viewData);
viewData.setaccountId(accountId);
viewData.setaccountLevel(accountLevel);
viewData.setymId(ymId);
viewData.setawId(awId);
viewData.setadAwardGroup(adAwardGroup);
viewData.setadScoutGroup(adScoutGroup);
viewData.setcaId(caId);
viewData.setnoGroupsStarted(numberOfGroupsStarted);
viewData.setsection(groupSection);
viewData.sethikeRecordID(hikeRecordID);
viewData.sethikeMealID(hikeMealID);
viewData.setactivityE1ID(e1ActivityID);
viewData.setpenPalID(penPalID);
viewData.setGroupNAS(groupNAS);
return viewData;
}

public ViewData getViewData() {
return (ViewData) getThreadLocalRequest().getSession().getAttribute("viewData");
}

最佳答案

您需要某种外部存储。 Redis 可能是跟踪此类事件的最常见方法,但如果您有数据库或其他某种方式来存储对象,则可以使用它(取决于您对性能的需求)。

关于java - 存储变量以在 Java 中的 View /页面之间安全传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48144163/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com