JSP ( Java Server Pages ) - технология, позволяющая веб-разработчикам динамически генерировать HTML, XML и другие веб-страницы. Не является составной частью единой технологии создания бизнес-приложений Java EE, поскольку может использоваться отдельно, а технология Java EE может использоваться без использования JSP. Технология позволяет вставлять Java -код, в статический содержимое страницы. Также могут использоваться библиотеки JSP тегов для вставки их в JSP-страницы. Страницы компилируются JSP-компилятором в сервлеты, которые являются Java-классами, и выполняются на сервере. Сервлеты также могут быть написаны разработчиком, не используя JSP-страницы. Эти технологии дополняют друг друга.
JSP - одна из высокопроизводительных технологий, поскольку весь код страницы транслируется в java-код сервлета с помощью компилятора JSP страниц (напр. Jasper ), а затем компилируется в байт-код виртуальной машины java ( JVM ).
JSP пример
<?xml version="1.0" encoding="UTF-8"?>
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0">
<jsp:directive.page contentType="application/xhtml+xml; charset=UTF-8"/>
<jsp:output doctype-root-element="html" doctype-public="-//W3C//DTD XHTML 1.1//EN"
doctype-system="http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" omit-xml-declaration="true"/>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>title страницы</title>
</head>
<body>
<h1>Заглавие</h1>
<p>Текст</p>
<jsp:scriptlet>
out.print(Calendar.getInstance(request.getLocale()).getFirstDayOfWeek() == Calendar.SUNDAY ?
"В вашей стране неделя начинается с воскресенья" :
"В вашей стране неделя начинается не с воскресенья");
</jsp:scriptlet>
</body>
</html>
</jsp:root>