<%@page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@page import="java.time.LocalTime"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Przykład JSP 1</title>
</head>
<body>
<h1>Przykład JSP 1</h1>
<p>To jest zwykły HTML, <em>Ala ma kota</em>.</p>
<!-- To jest komentarz HTML → zostanie wysłany do klienta. -->
<%-- To jest komentarz JSP → będzie ukryty przed klientem. --%>

<%-- W plikach JSP zasadniczo piszemy kod HTML, ale istnieje kilka sposobów, aby odwołać się do świata Javy. --%>

<%-- 1. Skryptety (scriptlet): fragment kodu Java umieszczony w obrębie JSP w specjalnych tagach --%>
<%-- Zwykły blok kodu, wstawiany do metody w odp miejscu: --%>
<%
int x = 123;
out.println("To wypisał sryptlet, x=" + x);
System.out.println("a kuku, tu JSP");
%>
<p>Z powrotem zwykły HTML.</p>

<%-- Deklaracja, umieszczana na poziomie klasy (tej klasy, która jest generowana na podstawie tego JSP) --%>
<%!
private static int licznik = 0;
private String hello() { return "Hello world"; }
%>

<%-- Odczyt wartości i wstawienie bezpośrednio do wyniku: --%>
<p>Licznik: <%= ++licznik %></p>
<p>Bieżący czas: <%= LocalTime.now() %></p>
<p><%=hello()%></p>
<p>Witaj <%=request.getParameter("imie")%></p>

</body>
</html>