Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在JavaJSF中单击按钮显示数据库中的数据_Java_Jsp_Jsf 2 - Fatal编程技术网

如何在JavaJSF中单击按钮显示数据库中的数据

如何在JavaJSF中单击按钮显示数据库中的数据,java,jsp,jsf-2,Java,Jsp,Jsf 2,请检查我上面的代码,我试图从数据库中点击按钮(listOfMarks)获取值,并在datatable中显示它们。 使用上述代码无法获取数据。如果我在某些地方做错了,请帮助我…虽然“请检查我的代码”在这里通常不起作用,但我发现了一件事: //... getters and setters public String listOfMarks(){ student.marksListFromDb(stuNum); return null; } private List ma

请检查我上面的代码,我试图从数据库中点击按钮(listOfMarks)获取值,并在datatable中显示它们。 使用上述代码无法获取数据。如果我在某些地方做错了,请帮助我…

虽然“请检查我的代码”在这里通常不起作用,但我发现了一件事:

    //... getters and setters

public String listOfMarks(){
    student.marksListFromDb(stuNum);
    return null;
}

private List marksList= new ArrayList();

public List getMarksList() {       
    return marksList;
}
你没有把任何东西放在这里的市场清单上,是吗

编辑:还要注意的是,它们在执行方面是相当平等的:
{stuBean.getMarkList}
{stuBean.markList}
,因为后者很可能被框架翻译成
StudentBean.getMarkList()
,就像
{stuBean.getMarkList}
一样,尽管“请检查我的代码”在这里通常不起作用,我发现了一件事:

    //... getters and setters

public String listOfMarks(){
    student.marksListFromDb(stuNum);
    return null;
}

private List marksList= new ArrayList();

public List getMarksList() {       
    return marksList;
}
你没有把任何东西放在这里的市场清单上,是吗

编辑:还要注意的是,它们在执行方面是相当相等的:
{stuBean.getMarkList}
{stuBean.markList}
,因为后者很可能被框架翻译成
StudentBean.getMarkList()
,正如
{stuBean.getMarkList}
一些一般的东西:

commandButton中的操作方法应返回void或String。该字符串用于导航。如果要重新加载同一页,请返回null

您将标记列表的getter方法与操作方法混合使用

您应该有一个操作方法,例如填充列表、返回空字符串并重新加载当前页面的
fillMarkList()
,并且您应该有一个getter方法
getMarkList()
返回数据表的列表:

public List getMarkList() {
 student.markListFromDb(stuNum);
 return markList;
}
然后,您的按钮应调用
fillMarkList()
作为操作方法:

public String fillMarkList() {
   // fill the list:
   student.markListFromDb(stuNum);
   // reload current page:
   return null;
}

public List getMarkList() {
   return markList();
}
一些一般的事情:

commandButton中的操作方法应返回void或String。该字符串用于导航。如果要重新加载同一页,请返回null

您将标记列表的getter方法与操作方法混合使用

您应该有一个操作方法,例如填充列表、返回空字符串并重新加载当前页面的
fillMarkList()
,并且您应该有一个getter方法
getMarkList()
返回数据表的列表:

public List getMarkList() {
 student.markListFromDb(stuNum);
 return markList;
}
然后,您的按钮应调用
fillMarkList()
作为操作方法:

public String fillMarkList() {
   // fill the list:
   student.markListFromDb(stuNum);
   // reload current page:
   return null;
}

public List getMarkList() {
   return markList();
}

您没有显示标记列表中填充的代码。从您的代码中,似乎您获取了数据,然后什么也不做。我仍然看不到您在哪里向
marksList
添加元素。尝试调试load方法,并查看最后的
marksList
是否包含任何内容。如果我在数据库方法中调试列表,它将包含数据,并且列表将打印在控制台上。。当我尝试调试整个…commandButton的操作没有被调用…这里没有调用`action=“{stuBean.listOfMarks}”`您没有显示填充标记列表的代码。从您的代码中,似乎您获取了数据,然后什么也不做。我仍然看不到您在哪里向
marksList
添加元素。尝试调试load方法,并查看最后的
marksList
是否包含任何内容。如果我在数据库方法中调试列表,它将包含数据,并且列表将打印在控制台上。。当我尝试调试整个…commandButton的操作没有被调用…这里没有调用'action=“#{stuBean.listOfMarks}”`我尝试了同样的方便..我没有工作,我尝试了上面的代码。你能建议我如何解决这个问题吗?“不起作用”是什么意思?调试您的项目,检查是否调用了您的操作方法(在操作方法中设置断点)以及列表是否已填充。我已经编辑了我之前尝试过的代码(也是根据您的建议)…commandbutton的操作方法从未在此处调用..更新了我的答案。不知道这是否有帮助,但您可以检查浏览器中的javascript控制台错误以查看是否存在任何问题。以上述方式进行的更改对我没有帮助。我可以在控制台中打印列表大小,但当将其提取到datatable时,问题就出现了。。此外,我在datatable中放置了一些输入字段,这些字段在页面加载时没有显示。。你能检查一下我检索datatable数据的代码是否正确吗?我也试过同样的方法。我没有工作,我试过上面的代码,就像在我的文章中一样。你能建议我如何解决这个问题吗?“不起作用”是什么意思?调试您的项目,检查是否调用了您的操作方法(在操作方法中设置断点)以及列表是否已填充。我已经编辑了我之前尝试过的代码(也是根据您的建议)…commandbutton的操作方法从未在此处调用..更新了我的答案。不知道这是否有帮助,但您可以检查浏览器中的javascript控制台错误以查看是否存在任何问题。以上述方式进行的更改对我没有帮助。我可以在控制台中打印列表大小,但当将其提取到datatable时,问题就出现了。。此外,我在datatable中放置了一些输入字段,这些字段在页面加载时没有显示。。你能检查我检索datatable数据的代码是否正确吗