Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемДмитрий Черников
1 Saint Petersburg, 2012 Java Lecture 12 JSTL
2 JSP -> JSTL JSP – хорошо Что делать если хотим добавить условие? Итерирование по списку и вывод каждого элемента в отдельной колонке? Скриплеты? Костыли? JSTL? 2
3 JSTL Example 3
4 Problem [1] 4
5 Problem [2] 5
6 [1] [1] 6
7 [2] [2] 7
8 Problem 8
9 [1] [1] 9
10 [2] [2] 10
11 [3] varStatus properties [3] varStatus properties 11
12 12
13 13
14 [1] [1] 14
15 [2] [2] 15
16 16
17 Content including static, in translation time dynamic, in request time dynamic, in request time. Last one is more powerful and flexible. Could be used to retrieve the content from outside of the container. 17
18 18
19 What to do if cookies disabled? 19
20 Own tag library [1] dscat pageheader ru.view.tag.PageHeader 20
21 Own tag library [2] Программный код для поддержки custom тэга - это специальным образом написанный экземпляр Java класса, который вызывается web контейнером всякий раз, когда требуется обработать JSP страницу, содержащую соответствующий тэг. В простейшем случае в качестве базового класса можно использовать TagSupport. Эти и другие стандартные классы и интерфейсы находятся в пакете javax.servlet.jsp.tagext. 21
22 Own tag library [3] Custom тэг без обработки содержимого. 22
23 Own tag library [4] doStartTag() – вызывается когда в JSP странице обработка доходит до открывающего custom тэга Возращает SKIP_BODY если тело тега должно быть проигнорировано Возвращает EVAL_BODY_INCLUDE если тело тега должно быть обработано. doEndTag() – Когда обработка доходит до соответствующего закрывающего тэга Возвращает SKIP_PAGE чтобы оставшаяся часть JSP страницы была проигнорирована Возвращает EVAL_PAGE – чтобы остаршаяся часть страницы была обработана 23
24 Own tag library [5] Если требуется доступ к содержимому custom тэга, то соответствующий Java класс должен реализовывать интерфейс BodyTag или же наследовать класс BodyTagSupport. И в том, и в другом случае класс может реализовать методы doInitBody и doAfterBody. doInitBody() – вызывается сразу после того, как выявлено содержимое тэга, но до того, как оно будет обработано. doAfterBody() – Когда обработка доходит до соответствующего закрывающего тэга Возвращает значение EVAL_BODY_BUFFERED если нужно повторить обработку содержимого тэга еще раз Возвращает SKIP_BODY если дальнейшей обработки тела тега не требуется 24
25 Own tag library [6] Помимо информации в промежутке между открывающим и закрывающим тэгами, custom тэг может иметь некоторые атрибуты. Например: Реализующий этот custom тэг класс должен содержать следующий код: protected String height = null; public String getHeight() { return (this.height); } public void setHeight(String value) { this.height = value; } 25
26 Own tag library [7] random advice advice foo.AdvisorTagHandler empty user true 26
27 References 27 Head First: Servlets & JSP (2 nd edition). OReilly
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.