https://www3.ntu.edu.sg/home/ehchua/programming/java/JSPByExample.html
https://beginnersbook.com/jsp-tutorial-for-beginners/
https://www.javatpoint.com/jsp-tutorial
Capturar parámetros:
https://www.javatpoint.com/request-implicit-objectç
Variables de sesión:
https://www.javatpoint.com/session-implicit-object
Para declarar variables o funciones hay que usar el !:
https://www.javatpoint.com/session-implicit-object
Código de algunas páginas:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
<!-- jQuery library -->
<script
src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<!-- Popper JS -->
<script
src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
<!-- Latest compiled JavaScript -->
<script
src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<h1>Hola Mundo!!</h1>
<%
out.print("<p>Vengo del código</p>");
String nombre = "Juan";
%>
<p><%=nombre%></p>
<%
double num = Math.random();
if (num > 0.5) {
out.print("<h2>Ha salido cara</h2><p>crocretamente ha salido:" + num + "</p>");
} else{
out.print("<h2>Ha salido cruz</h2><p>crocretamente ha salido:" + num + "</p>");
}
if (num > 0.5) {
%>
<h2>Ha salido cara</h2>
<p>
crocretamente ha salido:
<%=num%>
</p>
<%
} else {
%>
<h2>Ha salido cruz</h2>
<p>
concretamente ha salido:
<%=num%>#
</p>
<%
}
%>
<button class="btn btn-primary">soy codigo</button>
</body>
</html>
<!-- Imprimo con la función out de JSP -->
<p>
<%
out.print("Esto es código JSP");
%>
</p>
<!-- %= es un atajo si solo quiero imprimir -->
<p><%="Esto es también"%></p>
<!-- Uso clases de java -->
<h3><%=java.time.LocalDateTime.now().format(java.time.format.DateTimeFormatter.ofPattern("dd-MM-yyy HH:mm"))%></h3>
<!-- Declaraciones -->
<%!String nombre = "Ana Pi";
String saludo(String nombre) {
return "Hola " + nombre;
}%>
<!-- Uso lo declarado -->
<p><%=saludo(nombre)%></p>
<p><%=saludo("Juan Buj")%></p>