синтаксис JSP
Этот раздел будет краткое введение в разработку JSP базовой грамматики.
скрипт
оператор сценария Java может содержать любое количество переменных, методов или выражения, до тех пор, как они действуют на языке сценариев.
Синтаксис сценария:
<% 代码片段 %>
В качестве альтернативы, вы можете также записать эквивалентное утверждение XML, как это показано ниже:
<jsp:scriptlet> 代码片段 </jsp:scriptlet>
Любой текст, HTML-теги, JSP-элементы должны быть выписаны из сценария.
Вот пример, но и первый пример учебника JSP:
<html> <head><title>Hello World</title></head> <body> Hello World!<br/> <% out.println("Your IP address is " + request.getRemoteAddr()); %> </body> </html>
Примечание: Убедитесь , что Apache Tomcat уже установлена в C: \ Apache-7.0.2-мартовский кот каталог и операционная среда была установлена правильно.
Приведенный выше код хранится в hello.jsp, а затем поместить его в C: \ Apache-7.0.2-мартовский кот \ WebApps \ Корневой каталог под землей, откройте браузер и введите в адресной строке HTTP: // локальный: 8080 / привет .jsp. После запуска следующие результаты:
Китайская проблема кодирования
Если мы хотим, чтобы правильно отобразить страницу на китайском языке, мы должны возглавить в файле JSP, добавьте следующий код: <>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
Мы полны решимости изменить эту программу:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> Hello World!<br/> <% out.println("你的 IP 地址 " + request.getRemoteAddr()); %> </body> </html>
Таким образом, китайцы будут отображаться неправильно.
JSP декларация
Заявление может объявить одну или несколько переменных, методов, Java-код для последующего использования. В файле JSP, вы должны объявить эти переменные и методы, прежде чем использовать их.
JSP декларация синтаксиса:
<%! declaration; [ declaration; ]+ ... %>
В качестве альтернативы, вы можете также записать эквивалентное утверждение XML, как это показано ниже:
<jsp:declaration> 代码片段 </jsp:declaration>
Пример программы:
<%! int i = 0; %> <%! int a, b, c; %> <%! Circle a = new Circle(2.0); %>
выражения JSP
A JSP язык сценариев выражения, содержащиеся в выражении, сначала преобразуется в строку, а затем вставляются в локальные выражения возникают.
Так как значение выражения преобразуется в строку, так что вы можете использовать выражения в строке текста, не имея от того, является ли это HTML-теги.
Выражение элемент может содержать любое выражение, которое соответствует спецификации языка Java, но вы не можете использовать точку с запятой в конце выражения.
JSP синтаксис выражения:
<%= 表达式 %>
Кроме того, вы также можете написать эквивалентное заявление XML:
<jsp:expression> 表达式 </jsp:expression>
Пример программы:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <p> 今天的日期是: <%= (new java.util.Date()).toLocaleString()%> </p> </body> </html>
После запуска следующие результаты:
今天的日期是: 2016-6-25 13:40:07
комментарии JSP
JSP комментарии имеют две основные функции: для аннотирования кода и фрагмент кода из комментировал.
JSP синтаксис комментариев:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <%-- 该部分注释在网页中不会被显示--%> <p> 今天的日期是: <%= (new java.util.Date()).toLocaleString()%> </p> </body> </html>
После запуска следующие результаты:
今天的日期是: 2016-6-25 13:41:26
При различных обстоятельствах использование правил синтаксиса аннотации:
грамматика | описание |
---|---|
<% - Комментарий -%> | комментарии JSP, комментарий не будет отправлен в браузер даже не будет скомпилирован |
<! - Комментарий -> | Вы можете видеть комментарии в комментариях HTML, просмотреть исходный код страницы через браузер |
<\% | Представитель статические <% постоянной |
% \> | Представитель статические%> константы |
\ ' | Используйте одинарные кавычки в свойстве |
\ " | Используйте двойные кавычки в свойстве |
директивы JSP
директива JSP, чтобы установить атрибуты, связанные со всей страницы JSP.
JSP синтаксис команды:
<%@ directive attribute="value" %>
Есть три метки инструкции:
инструкция | описание |
---|---|
<% @ Page% ...> | Зависимость от страницы определение свойства, такие как язык сценариев, страницы ошибок, требования к кэш-памяти и т.д. |
<% @ Включить ...%> | Он содержит дополнительные файлы |
<% @% ... Библиотеки тегов> | Введение определения библиотеки тегов может быть на заказ ярлык |
поведение JSP
JSP-теги, используя структуру синтаксиса XML действует для управления сервлетов. Он может динамически вставить файл, повторное использование компонентов JavaBean, привести пользователя на другую страницу, связанного с HTML, сформированного для Java плагина и так далее.
Поведение только один синтаксис этикетки, что строгое соблюдение стандартов XML:
<jsp:action_name attribute="value" />
Вкладка Поведение в основном на некоторых предопределенных функций, в следующей таблице перечислены некоторые из поведения JSP Ло доступны этикетки ::
грамматика | описание |
---|---|
JSP: включить | Для содержащий статический или динамический ресурс на текущей странице |
JSP: useBean | Найти и инициализировать компоненты JavaBean |
JSP: SetProperty | Установка компонентов JavaBean |
JSP: GetProperty | Ценность бина компонентов в выходе |
JSP: вперед | Передача объекта запроса, который содержит запрос пользователя из файла JSP в другой файл |
JSP: плагин | Апплет используется для хранения и объекты JavaBean в сгенерированных HTML страниц |
JSP: элемент | Динамически создать элемент XML |
JSP: атрибут | Атрибут XML-элемент определяет динамику созданного |
JSP: корпус | XML Body элемент определяет динамически созданный |
JSP: текст | Шаблон используется для инкапсуляции данных |
JSP неявные объекты
Переменные JSP поддерживают девять автоматически определены, реки и озера, известные скрытые объекты. Введение девять неявных объектов в таблице ниже:
объекты | описание |
---|---|
запрос | Примеры класса HttpServletRequest |
ответ | Примеры HttpServletResponse класса |
из | Примеры PrintWriter класс используется для вывода результата на странице |
сессия | класс Примеры HttpSession |
приложение | ServletContext экземпляр класса, а также контекстно-зависимое приложение |
конфиг | Примеры ServletConfig класс |
PageContext | Примеры PageContext класс JSP страница предоставляет доступ ко всем объектам и пространств имен |
страница | Подобно классу Java в этом ключевое слово |
исключение | Исключение объекта класса , который представляет произошла ошибка JSP - страницы , соответствующий объект исключения |
Отчеты о движении управления
JSP обеспечивает полную поддержку языка Java. Вы можете использовать программу в JSP Java API даже создавать блоки кода Java, в том числе заявления и петель судьи, и так далее.
Судья предложений
Если ... еще блок, рассмотрим следующий пример:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%! int day = 3; %> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <h3>IF...ELSE 实例</h3> <% if (day == 1 | day == 7) { %> <p>今天是周末</p> <% } else { %> <p>今天不是周末</p> <% } %> </body> </html>
После запуска следующие результаты:
IF...ELSE 实例 今天不是周末
Теперь посмотрим на переключатель ... случай блока, и если ... остальное блоки очень разные, она использует out.println (), и целые теги скрипта установлены в программе, как это:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%! int day = 3; %> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <h3>SWITCH...CASE 实例</h3> <% switch(day) { case 0: out.println("星期天"); break; case 1: out.println("星期一"); break; case 2: out.println("星期二"); break; case 3: out.println("星期三"); break; case 4: out.println("星期四"); break; case 5: out.println("星期五"); break; default: out.println("星期六"); } %> </body> </html>
доступ через браузер, выполните следующие результаты:
SWITCH...CASE 实例 星期三
Loops
Три основных типа обращения в программе JSP можно использовать в Java: для, в то время, и делать ... пока.
Давайте посмотрим на пример для цикла, следующий вывод различных размеров шрифта "Руководство":
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%! int fontSize; %> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <h3>For 循环实例</h3> <%for ( fontSize = 1; fontSize <= 3; fontSize++){ %> <font color="green" size="<%= fontSize %>"> 本教程 </font><br /> <%}%> </body> </html>
После запуска следующие результаты:
В приведенном выше примере использовать цикл времени, чтобы написать:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%! int fontSize; %> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <h3>While 循环实例</h3> <%while ( fontSize <= 3){ %> <font color="green" size="<%= fontSize %>"> 本教程 </font><br /> <%fontSize++;%> <%}%> </body> </html>Доступ браузера, выход (FontSize инициализируется в 0, поэтому выход из многострочно):
оператор JSP
JSP поддерживает все Java логические и арифметические операции.
В следующей таблице перечислены JSP Ло общий приоритет оператора от высокой в конце:
категория | операторы | переплет |
---|---|---|
суффикс | () []. (Оператор Dot) | Слева направо |
унитарный | + + + - - ~ | Справа налево |
Мультипликативность | * /% | Слева направо |
аддитивность | + - | Слева направо |
водоизмещение | >> << >>> | Слева направо |
отношения | >> = << = | Слева направо |
Равное / неравны | ==! = | Слева направо |
Биты и | & | Слева направо |
Бит XOR | ^ | Слева направо |
Бит или | | | Слева направо |
Логика и | && | Слева направо |
Логическое иЛИ | || | Слева направо |
условный | ?: | Справа налево |
присваивание | = + = - = * = / =% = >> = << = & = ^ = | = | Справа налево |
запятая | , | Слева направо |
JSP буквальным
JSP язык определяет следующие слова лицу сумму:
- Булевы значения (Boolean): истинные и ложные;
- Целое число (INT): те же, что в Java;
- Поплавок (с плавающей точкой): такой же, как те, в Java;
- String (строка): одинарные или двойные кавычки, чтобы начало и конец;
- Null: NULL.