java - 从Java中的另一个类获取参数

标签 java wicket

我有一个简单的问题,但我无法解决它.. 我正在使用 Wicket 口。 在网络应用程序上我有一个按钮(加载)。当我单击该按钮时,一些数据会从 Web 加载,保存在数据库中,然后加载到 Web 应用程序 (StartPage.html)。我有另一个按钮用于更正数据(编辑),当我单击它时,EditPage.html 会加载。所以我只有 2 页。对 EditPage.html 进行一些更正后,我单击保存按钮,新数据会更新到数据库中,然后应加载到 Web 应用程序(StartPage.html)中。

这很简单,但在我单击“加载”按钮之前,应该是干净的。因此,如果我在“加载”单击之前清理表格,那么每次单击“编辑”按钮时,它都会被清理。我尝试制作一些标志,或将参数发送到 StartPage,但它看起来像一个圆圈。

StartPage 每次都应该加载数据,但第一次会清理表格,但后来却没有。问题在于以某种方式发送参数..

我希望它很清楚,有什么建议吗?

更新:

编辑页面

public class EditPage extends WebPage {
    public EditPage(final PageParameters parameters) {
        Form<?> form = new Form<Void>("form") {
                    @Override
                    protected void onSubmit() {
                        // if button "save" clicked
                        PageParameters params = new PageParameters();
                        params.add("flag", "true");
                        setResponsePage(StartPage.class, params);
                    }
        };
    }
}

起始页

public class StartPage extends WebPage {
    public StartPage(final PageParameters parameters) {     
            String flag = parameters.getString("flag")
            if (flag=="false")
                // Delete from DB

            Form<?> form = new Form<Void>("form") {
                @Override
                protected void onSubmit() {
                    // Load from web to DB      
                }
            };

            // Load from DB
    }
}

最佳答案

我终于做到了这样,但据我所知,这是“糟糕”的解决方案

编辑页面

public class EditPage extends WebPage {
    public EditPage(final PageParameters parameters) {
        Form<?> form = new Form<Void>("form") {
                    @Override
                    protected void onSubmit() {
                        // if button "save" clicked
                        PageParameters params = new PageParameters();
                        params.add("flag", "true");
                        setResponsePage(StartPage.class, params);
                    }
        };
    }
}

起始页

public class StartPage extends WebPage {
    public StartPage(final PageParameters parameters) {     

            Form<?> form = new Form<Void>("form") {
                @Override
                protected void onSubmit() {
                    // Delete from DB
                    // Load from web to DB
                    // Load from DB     
                }
            };

            if (parameters.getString("flag")!=null)
                // Load from DB
    }
}

关于java - 从Java中的另一个类获取参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12806638/

相关文章:

java - org.hibernate.validator.constraints.电子邮件消息 i18n

java - 使用 jGit 添加目录中的所有文件

jakarta-ee - 如何跨多个请求(使用 Wicket 和 JPA)将实体(或其关联)附加到当前持久性上下文?

html - 为什么 Wicket 会更改 html 元素的 id?

session - session 数据属于 Wicket 中的哪里?

javascript - Vaadin - 从客户端 javascript 组件请求布局

java - 如何告诉 maven/wsimport 在生成代码时忽略某些架构文件?

java - Gradle 内部 slf4j 与我自己的 slf4j 依赖项冲突

java - Wicket:用自定义内容动态填充单元格

java - Wicket 口 ListView : do not output "container" tag