Теги действий JSP
Что такое действие JSP?
Действия JSP используют конструкцию синтаксиса XML для управления поведением механизма сервлетов. Мы можем динамически вставлять файл, повторно использовать компоненты bean-компонентов, перенаправлять пользователя на другую страницу и т. д. с помощью действий JSP, таких как включение и пересылка. В отличие от директив, действия переоцениваются при каждом доступе к странице.
Синтаксис:
<jsp:action_name attribute="value" />
В этом уроке вы узнаете о стандартных действиях JSP. Теги стандартных действий JSP используются для управления поведением механизма сервлетов.
Список часто используемых тегов действий в JSP
В JSP существует 11 типов стандартных тегов действий, вот их полный список.
| Имя тега действия | Синтаксис | Описание |
|---|---|---|
| jsp: useBean | Используется для вызова и использования компонентов на странице JSP. | |
| jsp: включить | Включает другой JSP-файл в текущий файл во время обработки запроса. | |
| jsp: setProperty | Устанавливает свойство компонента. | |
| jsp: getProperty | Извлекает свойство компонента и преобразует его в строку для вывода. | |
| jsp: вперед | Перенаправляет запрос на другую JSP или статическую страницу. | |
| jsp: плагин | Представляет Java компоненты, такие как апплеты или компоненты, в JSP и автоматически генерирует теги. | |
| jsp: body | Определяет элементы XML, которые генерируются динамически во время обработки запроса. | |
| jsp: текст | текст шаблона | Используется для вставки текста шаблона на страницы JSP, содержащие только текст и выражения EL. |
| jsp: param | Передает параметры в действие jsp:plugin для добавления дополнительных данных. | |
| jsp: атрибут | Определяет атрибуты XML, которые генерируются динамически. | |
| jsp:вывод | Указывает декларацию XML или DOCTYPE, которая будет использоваться в выходных данных. |
jsp: useBean
- Это имя действия используется, когда мы хотим использовать bean-компоненты на странице JSP.
- С помощью этого тега мы можем легко вызвать компонент.
Синтаксис jsp: UseBean:
<jsp:useBean id="" class="" />
Здесь указывается идентификатор этого bean-компонента, а class — это полный путь к классу bean-компонента.
Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Action JSP1</title>
</head>
<body>
<jsp:useBean id="name" class="demotest.DemoClass">
</body>
</html>
Расшифровка кода:
Code Линия 10: В приведенном выше коде мы используем «идентификатор компонента» и «путь к классу» компонента.
jsp: включить
- Он также использовался для вставки файла JSP в другой файл, точно так же, как включение Директивы.
- Он добавляется на этапе обработки запроса.
Синтаксис jsp:include
<jsp:include page="page URL" flush="true/false">
Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.
Action_jsp2 (Code Строка 10) Мы подключаем файл date.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Date Guru JSP</title>
</head>
<body>
<jsp:include page="date.jsp" flush="true" />
</body>
</html>
Дата.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<p>
Today's date: <%= {new java.util.Date()).toLocaleString()%>
</p>
</body>
</html>
Расшифровка кода:
Action_jsp2.jsp
Code Линия 10: В первый файл мы включаем файл date.jsp в action_jsp2.jsp.
Дата.jsp:
Code Линия 11: Мы печатаем сегодняшнюю дату в строке кода 11 в date.jsp.
Когда вы выполняете следующий код, выводится результат.
Выход:
- Он отображает сегодняшнюю дату со временем, поскольку файл даты включен в основной JSP.
jsp: setProperty
- Это свойство стандартных действий в JSP используется для установки свойства компонента.
- Нам нужно определить компонент перед установкой свойства
Синтаксис:
<jsp:setproperty name="" property="" >
Здесь имя определяет бин, свойство которого задано, и свойство, которое мы хотим задать. Также мы можем задать значение и атрибут param. Здесь value не является обязательным и определяет значение, которое назначается свойству. Здесь param — это имя параметра запроса, с помощью которого можно получить значение. Пример setproperty будет продемонстрирован ниже с getproperty
jsp: getProperty
- Это свойство используется для получения свойства компонента.
- Он преобразуется в строку и, наконец, вставляется в выходные данные.
Синтаксис:
<jsp:getAttribute name="" property="" >
Здесь имя бина, из которого должно быть извлечено свойство, и бин должен быть определен. Атрибут свойства — это имя свойства бина, которое должно быть извлечено.
Пример setProperty и getProperty:
TestBean.java:
package demotest;
import java.iO.Serializable;
public class TestBean implements Serializable{
private String msg = "null";
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
}
Action_jsp3.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Action 3</title>
</head>
<body>
<jsp:useBean id="GuruTest" class="demotest.TestBean" />
<jsp:setProperty name="GuruTest" property="msg" value="GuruTutorial" />
<jsp:getProperty name="GuruTest" property="msg" />
</body>
</html>
Расшифровка кода:
TestBean.java:
Code Линия 5: TheTestBean реализует сериализуемый класс. Это класс bean-компонента с геттерами-сеттерами в коде.
Code Линия 7: Здесь мы принимаем частную строковую переменную msg как «нулевую».
Code Строка 9-14: Здесь мы используем геттеры и сеттеры переменной «msg».
Action_jsp3.jsp
Code Линия 10: Здесь мы используем тег «useBean», где он указывает компонент, т.е. TestBean, который должен использоваться в этом классе jsp.
Code Линия 11: Здесь мы устанавливаем значение свойства msg для компонента TestBean как "GuruУчебное пособие.
CodeСтрока 12: Здесь, используя getProperty, мы получаем значение свойства msg для бина TestBean, то есть GuruУчебное пособие, которое находится в выходных данных.
Когда вы выполните приведенный выше код, вы получите следующий результат:
Выход:
В этом примере, используя TestBean, мы пытаемся установить свойство «gurutest» с помощью метода setProperty и получить значение свойства с помощью метода getProperty в виде "GuruУчебник”
jsp: вперед
Он используется для пересылки запроса на другой jsp или любую статическую страницу.
Здесь запрос может быть перенаправлен без параметров или с параметрами.
Синтаксис:
<jsp:forward page="value">
Здесь значение указывает, куда должен быть перенаправлен запрос.
Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.
Action_jsp41.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Action JSP1</title>
</head>
<body>
<jsp:forward page="jsp_action_42.jsp" />
</body>
</html>
Jsp_action_42.jsp
Guru Action JSP2</title> </head> <body> <a>This is after forward page</a> </body> </html>
Пояснение к коду
Action_jsp41.jsp
Code Линия 10: Здесь мы используем действие JSP пересылки для пересылки запроса на страницу, указанную в атрибуте, т. е. jsp_action_42.jsp.
Jsp_action_42.jsp
Code Линия 10: Как только мы вызываем action_jsp41.jsp, запрос перенаправляется на эту страницу, и мы получаем вывод: «Это после страницы пересылки».
Когда мы выполним приведенный выше код, мы получим следующий вывод
Выход:
Мы вызываем action_jsp41.jsp, но запрос перенаправляется на jsp_action_42.jsp, и мы получаем вывод с этой страницы как «Это после страницы пересылки».
jsp: плагин
- Он используется для ознакомления Java компоненты в jsp, т. е. компоненты Java могут быть либо апплетом, либо компонентом.
- Он обнаруживает браузер и добавляет или JSP-теги в файл
Синтаксис:
<jsp:plugin type="applet/bean" code="objectcode" codebase="objectcodebase">
- Здесь тип указывает либо объект, либо компонент.
- Code указывает имя класса апплета или компонента.
- Code base содержит базовый URL-адрес, в котором находятся файлы классов.
jsp: param
- Это дочерний объект объекта плагина, описанного выше.
- Он должен содержать одно или несколько действий для предоставления дополнительных параметров.
Синтаксис:
<jsp:params> <jsp:param name="val" value="val"/ > </jsp:params>
Пример плагина и параметра
Action_jsp5.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Action guru jsp5</title>
</head>
<body>
<jsp:plugin type="bean" code="Student.class" codebase="demotest.Student">
<jsp:params>
<jsp:param name="id" value="5" />
<jsp:param name="name" value="guru" />
</jsp:params>
</jsp:plugin>
</body>
</html>
Студент.java
package demotest;
import java.io.Serializable;
public class Student implements Serializable {
public String getName () {
return name;
}
public void setName (String name) {
this.name = name;
}
public int getId() {
return id;
}
public void setId (int id) {
this.id = id;
}
private String name = "null";
private int id = 0;
}
Расшифровка кода:
Action_jsp5.jsp
Code Линия 10: Здесь мы берем объект jsp:plugin, где мы берем три атрибута.
- Тип – в данном случае это bean
- Code- имя файла
- Codeбазовый путь – путь с именем пакета
Code Линия 11-14: Здесь мы берем объект jsp: params, под которым находится дочерний объект param с атрибутами name и value, и устанавливаем значения id и name в этих атрибутах.
Студент.java
Code 7-17: Мы используем геттеры и сеттеры для идентификатора и имени переменных.
Code 19-20: мы инициализируем переменные id и name.
Здесь мы получим вывод в случае, когда установленные значения параметра будут использоваться в Student Bean. В этом случае у нас не будет никакого вывода, поскольку мы просто устанавливаем и получаем значения параметра, но никуда его не печатаем.
jsp: body
- Этот тег используется для динамического определения XML, т.е. Elements может генерироваться во время запроса, чем во время компиляции.
- Фактически он определяет XML, который динамически генерирует тело элемента.
Синтаксис:
<jsp:body></jsp:body>
Здесь мы пишем тег тела XML внутри этих тегов.
jsp: атрибут
- Этот тег используется для динамического определения XML, т. е. элементы могут создаваться во время запроса, а не во время компиляции.
- Фактически он определяет атрибут XML, который будет генерироваться динамически.
Синтаксис:
<jsp:attribute></jsp:attribute>
Здесь мы пишем тег атрибута XML.
Пример тела и атрибута:
Action_jsp6.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Action Guru JSP6</title>
</head>
<body>
<jsp:element name="GuruXMLElement">
<jsp:attribute name="GuruXMLattribute">
Value
</jsp:attribute>
<jsp:body>Guru XML</jsp:body>
</jsp:element>
</body>
</html>
Расшифровка кода:
Code Линия 10: Здесь мы определяем элемент, который динамически генерируется как XMLи его имя будет GuruXMLElement
Code Линия 11-13: Здесь мы определяем атрибут, который будет атрибутом XML динамически генерируемого XML.
Code Линия 14: Здесь у нас есть действие тела, в котором мы пишем тело XML, которое будет генерироваться в динамическом XML.
При выполнении приведенного выше кода вы получите следующий результат:
Выход:
Здесь мы получаем выходные данные тега тела сгенерированного XML.
jsp: текст
- Он используется для шаблонирования текста на страницах JSP.
- Его тело не содержит никаких других элементов и содержит только текст и выражения EL.
Синтаксис:
<jsp:text>template text</jsp:text>
Здесь текст шаблона относится только к тексту шаблона (который может быть любым общим текстом, который необходимо распечатать на jsp) или любым EL выражение.
Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.
Action_jsp7.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Action JSP7</title>
</head>
<body>
<jsp:text>Guru Template Text</jsp:text>
</body>
</html>
Расшифровка кода:
Code Линия 10: Здесь мы берем текстовый объект для печати текста шаблона.
Когда вы выполните приведенный выше код, вы получите следующий вывод
Выход:
Мы получаем Guru Шаблонный текст, который размещается внутри текстовых объектов действий.
jsp:вывод
- Он указывает декларацию XML или декларацию DOCTYPE jsp.
- Объявление XML и DOCTYPE объявляются выходными данными.
Синтаксис:
<jsp:output doctype-root-element="" doctype-system="">
Здесь doctype-root-element указывает корневой элемент XML-документа в DOCTYPE. Doctype-system указывает doctype, который генерируется в выводе и дает системный литерал
Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Action Guru JSP8</title>
</head>
<body>
<jsp:output doctype-root-element="html PUBLIC" doctype-system="http://www.w3.org/TR/html4/loose.dtd"/>
</body>
</html>
Расшифровка кода:
Code Линия 10: Здесь мы используем объект выходного действия для создания DOCTYPE, и внутри он будет сгенерирован в этом формате:
Для этого не будет никаких выходных данных, поскольку они будут сгенерированы внутри.





