Отображать данные на jsp

<form method="post" action="paperEditQ.do">
                Please select the subject you want to modify the database of :<select name="category">
                    <%
                        Statement st = DBConnection.DBConnection.DBConnect();
                        ResultSet rs = st.executeQuery("select * from papers");
                        while(rs.next()){
                            String paper = rs.getString(1);
                            out.print("<option>"+paper+"</option>");
                        }
                    %>        
                </select>
                <input type="submit" value="Modify"/>
</form>

Это первая страница моего веб-приложения. Я хочу отображать данные из mySQL на этой странице jsp, используя теги jstl и EL (чтобы избавиться от скриптов и строго следовать MVC). Как бы я это сделал? (небольшой фрагмент кода действительно был бы оценен).


person Maverick    schedule 29.11.2013    source источник
comment
Поместите элементы из ResultSet в List или Set в Servlet или распорки Action и выполните итерацию с <C:forEach>.   -  person Sotirios Delimanolis    schedule 30.11.2013
comment
Это действительно хорошая идея. Делайте это, но не со Struts1, который является устаревшим, официально заброшенным фреймворком. Посмотрите, например, на Spring MVC, Stripes или Struts2. Теперь, каков ваш вопрос?   -  person JB Nizet    schedule 30.11.2013
comment
Я не могу выучить совершенно новый фреймворк за одну ночь, это еще одна проблема.   -  person Maverick    schedule 30.11.2013
comment
@SotiriosDelimanolis, не могли бы вы написать небольшой код, чтобы я мог понять. Я думал, что смогу сделать это, не обращаясь к контроллеру.   -  person Maverick    schedule 30.11.2013
comment
Не без избавления от скриптов. Вот пример.   -  person Sotirios Delimanolis    schedule 30.11.2013
comment
@SotiriosDelimanolis Могу ли я создать класс дао, а затем вызвать его для отображения данных из базы данных? Поскольку к этой странице обращаются напрямую и она не вытекает из действия struts, поэтому у меня нет набора результатов.   -  person Maverick    schedule 30.11.2013
comment
@TheLiberal: весь смысл архитектуры MVC, продвигаемой Struts и всеми другими платформами MVC, заключается в том, чтобы никогда, никогда не обращаться к странице напрямую и всегда проходить через контроллер. Поместите свой Java-код в контроллер, заставьте его хранить Java-бины в запросе и заставьте ваш JSP генерировать HTML из этих bean-компонентов, используя теги.   -  person JB Nizet    schedule 30.11.2013


Ответы (1)


В этом разделе показаны некоторые подходы к удалению или минимизации использования кода в jsp:

Как избежать кода Java в файлах JSP?

person bcfurtado    schedule 30.11.2013
comment
спасибо, но кажется, что крошечного использования скриптов нельзя избежать. - person Maverick; 30.11.2013
comment
Да, нельзя избежать, но можно свести к минимуму. - person bcfurtado; 30.11.2013