2016-05-22 2 views
1

Я попытался превратить эти скриптлеты в теги jstl без успеха, разве это невозможно сделать с этими строками кодов, и может ли это так? спасибоКак преобразовать скрипты в теги jstl

<% 
     //String file = application.getRealPath("C:/science/"); 

     File f = new File("C:/uploads"); 
     String [] fileNames = f.list(); 
     File [] fileObjects= f.listFiles(); 
    %> 
    <UL> 
    <% 
     for (int i = 0; i < fileObjects.length; i++) { 
      if(!fileObjects[i].isDirectory()){ 

    %> 
    <LI> 
     <A HREF="DownloadServlet?value=<%= fileNames[i] %>"><%= fileNames[i] %><u> Download</u></A> 
     <%= fileNames[i] %> 
     &nbsp;&nbsp;&nbsp;&nbsp; 
     (<%= Long.toString(fileObjects[i].length()) %> bytes long) 

    <% 
      } 
     } 
    %> 

ответ

1

Все, что у вас есть в скриптах, вы должны сделать это в java-коде и передать его в jsp. Я не знаю, используете ли вы какие-либо фреймворки для этого, но это легко в рамках Spring MVC.

В вашем случае вы должны создать в java bean-компонент со свойствами, которые вам нужны, такие как isDirectory, length, имя файла и т. Д. Затем вы создаете список этих компонентов и передаете его в jsp. Наконец, вы просто перебираете список бобов в jsp с циклом forEach для JSTL (http://docs.oracle.com/javaee/5/jstl/1.1/docs/tlddocs/c/forEach.html). Вы можете сообщить об этом Google, и вы найдете много примеров о том, как это сделать.

Для этого вам не нужно использовать скриптлеты.

Смежные вопросы