JSP (Java Server Pages) — технологія, що дозволяє веб-розробникам динамічно генерувати HTML, XML та інші веб-сторінки. Робота над JSP розпочалась в 1997 році. Згодом JSP було включено у склад Java EE — програмної платформи для програмування веб-додатків[1]. Технологія дозволяє вставляти Java-код, в статичний вміст сторінки. Також можуть використовуватись бібліотеки JSP тегів для вставки їх в JSP-сторінки. Сторінки компілюються JSP-компілятором в сервлети, які є Java-класами, і виконуються на сервері. Сервлети також можуть бути написані розробником, не використовуючи JSP-сторінки. Ці технології доповнюють одна одну.
JSP — одна із високопродуктивних технологій, оскільки весь код сторінки транслюється в java-код сервлету за допомогою компілятора JSP сторінок (напр. Jasper), а потім компілюється в байт-код віртуальної машини java (JVM).
<?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></head><body><h1>Заголовок</h1><p>Текст</p><jsp:scriptlet>
out.print(Calendar.getInstance(request.getLocale()).getFirstDayOfWeek() == Calendar.SUNDAY?"В вашій країні тиждень починається з неділі " :
"В вашій країні тиждень починається не з неділі");</jsp:scriptlet></body></html></jsp:root>