2016-06-07 78 views
0

我需要将.java中的数据传递给.jsp。将.java中的数据传递给.jsp文件(选择)

我为存储数据的两个选择菜单和java文件创建了ArrayList。 现在我需要使用循环将数据从列表(java文件)传递给jsp选择菜单(JSP文件)。

JAVA文件:

public class failureinindustryData 
{ 

    public List<String> print() { 

     ArrayList<String> l = new ArrayList<String>(); 

     for(int i=1970; i < 2016; i++) 
     { 
      String dateString = Integer.valueOf(i).toString(); 

      l.add(dateString); 
      System.out.println(dateString); 
     } 

     System.out.println(l); 

    return l; 

    } 

    public List<String> industry(){ 

     ArrayList<String> list = new ArrayList<String>(); 
     list.add("Option 1"); 
     list.add("Option 2"); 

     System.out.println(list); 

     return list; 

    } 
} 

我的JSP文件:

 <% request.setAttribute("list", list); %> 
     <% request.setAttribute("l", l); %> 


     <h3>Wyszukaj awarie w przemyśle:</h3> 

     <form action="#" method="post"> 

     Rok: <select name="year"> 
     <c:forEach var="item" items="${list}" varStatus="row"> 
      <option value="#">${item}</option> 
     </c:forEach> 
     </select> 

     Przemysł: <select 
     name="industry"> 
     <c:forEach items="#" var="industries"> 
      <option value="#">a</option> 
      <option value="#">b</option> 

     </c:forEach> 
     </select> 

我不知道我可以通过这个数组列表... ArrayList的将是更大的后来所以必须是循环有^^

回答

2

从servlet的数据传递到JSP,你必须将数据保存在请求对象:

request.setAttribute("mylist", myList); 

在JSP读取数据:

<c:forEach var="item" items="${mylist}" varStatus="row"> 
    <option value="#">${item}</option> 
</c:forEach> 
+0

我尽量让这一点。 并得到错误:列表/ l无法解析为变量 我编辑代码 – Tomasz