Рис. 3. Создание файла login.jsp с помощью мастера. |
Рисунок 4. JSP-файл, созданный мастером. |
Рис. 5. Настройка редактора атрибутов тега JSP |
1. <%@page contentType="text/html; charset=GBK" %> 2. <html> 3. <голова> 4. <title>логин</title> 5. </голова> 6. <body bgcolor="#ffffff"> 7. <Имя формы="Форма 1" метод="post" action="switch.jsp"> 8. Имя пользователя: <select name="userId"> 9. <выбрано значение параметра="">--Вход пользователя--</option> 10. <option value="100000">Цзянь Цзия</option> 11. <option value="100001">Бао Шуя</option> 12. <option value="100002">Вертикальные зубья</option> 13. </выбрать> 14. Пароль: <input name="password" type="password"> 15. <тип ввода="submit" name="Submit" value="Login"> 16. </форма> 17. </тело> 18. </html> |
Рис. 6. Страница входа в файл login.jsp. |
Практический опыт: Код файла JSP содержит статическую и динамическую части, то есть одна часть — это код HTML, а другая часть — теги JSP и код скриптлета. JSP, как правило, представляет собой веб-страницу с динамической логикой. JBuilder очень хорошо поддерживает динамические части кода, такие как теги JSP и скриптлеты. Вы можете использовать такие инструменты, как CodeInsight и TagInsight, для быстрого и правильного написания кода, а также компилировать и отлаживать JSP. С точки зрения написания статического HTML-кода JSP и визуального дизайна, Dreamweaver явно превосходит JBuilder в статическом коде и визуальном дизайне. |
1. книжный магазин; 2. импортировать java.sql.*; 3. 4. публичный класс UserList 5. { 6. //Получаем код списка пользователей раскрывающегося списка HTML 7. публичная статическая строка getUserListHTML() { 8. Соединение conn = ноль; 9. StringBuffer sBuf = новый StringBuffer(); 10. попробуй { 11. conn = DBConnection.getConnection(); 12. ReadedStatement pStat = conn.prepareStatement( 13. «выберите USER_ID,USER_NAME из T_USER»); 14. ResultSet rs = pStat.executeQuery(); 15. пока (rs.next()) { 16. sBuf.append("<option value='" + rs.getString("USER_ID") + "'>" + 17. rs.getString("ИМЯ_ПОЛЬЗОВАТЕЛЯ") + "</option>n"); 18. } 19. вернуть sBuf.toString(); 20. } catch (SQLException ex) { 21. ex.printStackTrace(); 22. возврат ""; 23. } наконец { 24. попробовать { 25. если (conn != ноль) { 26. конн.закрыть(); 27. конн = ноль; 28. } 29. } catch (SQLException ex1) { 30. } 31. } 32. } 33. } |
Рис. 7. Написание кода с помощью CodeInsight |
1. <%@page contentType="text/html; charset=GBK" import="bookstore.UserList" %> 2. <html> 3. <голова> 4. <title>логин</title> 5. </голова> 6. <body bgcolor="#ffffff"> 7. <Form name="Form 1" Method="post" action="switch.jsp">Имя пользователя: 8. <выберите name="userId"> 9. <выбрано значение параметра="">--Вход пользователя--</option> 10. <%=UserList.getUserListHTML()%> 11. </выбрать> 12. Пароль: <input name="password" type="password"> 13. <тип ввода="submit" name="Submit" value="Login"> 14. </форма> 15. </тело> 16. </html> |
Рис. 8. Запуск файла login.jsp в JBuilder |
Рис. 9. Использование IE для доступа к файлу login.jsp, работающему в JBuilder. |
намекать: Поскольку для компиляции файла JSP необходимо сначала преобразовать его в файл сервлета, а затем скомпилировать промежуточный файл сервлета. В случае возникновения ошибки он будет перенаправлен в файл JSP. Поэтому компиляция файла JSP требует больше времени и часто занимает много времени. дольше, чем компиляция Java-файла. В несколько раз больше времени. По умолчанию при компиляции проекта будут скомпилированы все JSP всего проекта, что занимает много времени. Поэтому лучше всего отменить настройку компиляции JSP-файлов вместе с проектом компиляции: через Project->Project Properties...->Build-> отменить опцию Проверять JSP на наличие ошибок во время сборки на странице настроек сборки. Отметьте эту опцию, когда она вам действительно нужна, и отмените ее сразу после компиляции. Эта настройка позволит вам потратить много драгоценного времени на разработку. |