Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/386.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.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
Java 使用从Servlet到JSP的数据填充选择菜单_Java_Jsp_Servlets - Fatal编程技术网

Java 使用从Servlet到JSP的数据填充选择菜单

Java 使用从Servlet到JSP的数据填充选择菜单,java,jsp,servlets,Java,Jsp,Servlets,我想从数据库中传递一些值,用各种选择菜单(大约5个)填充页面 我可以使用jstlsql标记来实现这一点,但这不是一个好的实践 如何从单个servlet获取此数据? 我可以从一个servlet发送多个列表吗 选择菜单从不同的表中填充。我想使用RequestDispatcher将列表转发到jsp。您可以在request属性中设置数据库中的数据,并将其呈现在jsp中 ,java.lang.Object)您可以在请求属性中设置来自数据库的数据,并在JSP中呈现它 ,java.lang.Object)是的

我想从数据库中传递一些值,用各种选择菜单(大约5个)填充页面

我可以使用
jstlsql
标记来实现这一点,但这不是一个好的实践

如何从单个servlet获取此数据?
我可以从一个servlet发送多个列表吗


选择菜单从不同的表中填充。我想使用
RequestDispatcher
将列表转发到jsp。

您可以在request属性中设置数据库中的数据,并将其呈现在jsp中


,java.lang.Object)

您可以在请求属性中设置来自数据库的数据,并在JSP中呈现它


,java.lang.Object)

是的,您可以这样做。从servlet中,您可以点击数据库(任意数量的表),将结果集存储在collection对象中,并将这些对象作为属性传递给JSP。

是的,您可以这样做。从servlet中,您可以点击数据库(任意数量的表),将结果集存储在collection对象中,并将这些对象作为属性传递给JSP。

您可以使用单独的
ArrayList
存储servlet中检索到的各种列表,然后将每个列表作为请求属性存储,如所述。您可以通过
请求
隐式对象在JSP中检索这些属性

如果您只想在单个请求属性中发送所有列表,那么建议使用
HashMap
,这样您的servlet代码可能如下所示:

List list1 = getListOneFromDatabase();
List list2 = getListTwoFromDatabase();
List list3 = getListThreeFromDatabase();
// and so on ...

Map<String, List> requestListMap = new HashMap<String, List>();
requestListMap.put("list1", list1);
requestListMap.put("list2", list2);
requestListMap.put("list3", list3);
// and so on ...

request.setAttribute("reqListMap", requestListMap);
List list1=getListOneFromDatabase();
List list2=getListTwoFromDatabase();
List list3=getListThreeFromDatabase();
//等等。。。
Map requestListMap=新建HashMap();
requestListMap.put(“list1”,list1);
requestListMap.put(“list2”,list2);
requestListMap.put(“list3”,list3);
//等等。。。
setAttribute(“reqListMap”,requestListMap);

希望这会有所帮助。

您可以使用单独的
ArrayList
存储Servlet中检索到的各种列表,然后将每个列表存储为请求属性,如所述。您可以通过
请求
隐式对象在JSP中检索这些属性

如果您只想在单个请求属性中发送所有列表,那么建议使用
HashMap
,这样您的servlet代码可能如下所示:

List list1 = getListOneFromDatabase();
List list2 = getListTwoFromDatabase();
List list3 = getListThreeFromDatabase();
// and so on ...

Map<String, List> requestListMap = new HashMap<String, List>();
requestListMap.put("list1", list1);
requestListMap.put("list2", list2);
requestListMap.put("list3", list3);
// and so on ...

request.setAttribute("reqListMap", requestListMap);
List list1=getListOneFromDatabase();
List list2=getListTwoFromDatabase();
List list3=getListThreeFromDatabase();
//等等。。。
Map requestListMap=新建HashMap();
requestListMap.put(“list1”,list1);
requestListMap.put(“list2”,list2);
requestListMap.put(“list3”,list3);
//等等。。。
setAttribute(“reqListMap”,requestListMap);

希望这能有所帮助。

True,但如何将多个列表放入一个请求属性中?理想情况下,这些列表将来自不同的DAO'sokay。。我了解你的情况。让我们获取一个Arraylist/Map并将所有列表放入其中,然后将该对象设置为AttributeRue,但是如何将多个列表放入一个请求属性中呢?理想情况下,这些列表将来自不同的DAO'sokay。。我了解你的情况。让我们获取一个Arraylist/Map,将所有列表放在其中,并将该对象设置为属性