Esta es la solucion al ejercicio anterior.
Creamos un nuevo proyecto web, (yo lo he llamado "CursoTablaMultiplicar").
A continuacion, en la carpeta "Web Pages", creo un archivo "html" y lo llamo "indice.html" y su codigo es el siguiente:
<!DOCTYPE html>
<html>
<head>
<title>Pagina de inicio</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<form action="Aduana" method="post">
<table align="center">
<tr>
<td align="center" colspan="2"><h2>Ingresa un numero</h2></td>
</tr>
<tr>
<td align="right"><b>Numero:</b></td>
<td><input type="text" name="cmpnum" size="2"/></td>
</tr>
<tr>
<td align="center" colspan="2"><input type="submit" value="Calcular"/></td>
</tr>
</table>
</form>
</body>
</html>
A continuacion, en la carpeta "Source Package", creo un archivo "Servlet" y lo llamo "Aduana" y su codigo es el siguiente:
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet(urlPatterns = {"/Aduana"})
public class Aduana extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;Charset=UTF-8");
PrintWriter salida = response.getWriter();
int num = Integer.parseInt(request.getParameter("cmpnum"));
if(num>0 && num<11){
response.sendRedirect("Tabla?cmpnum="+num);
}else{
salida.println("<html><body>");
salida.println("<center><h2><font color='red'>No existe esta tabla de multiplicar</font></h2></center>");
salida.println("<br/><br/><center><a href='indice.html'>Volver</a></center>");
salida.println("</body></html>");
salida.close();
}
}
}
Ahora, creo en la misma carpeta, otro archivo "Servlet" y lo llamo "Tabla" y su codigo es el siguiente:
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet(urlPatterns = {"/Tabla"})
public class Tabla extends HttpServlet {
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;Charset=UTF-8");
PrintWriter salida = response.getWriter();
int num = Integer.parseInt(request.getParameter("cmpnum"));
salida.println("<html><head><title>Tabla de multiplicar</title></head>");
salida.println("<body>");
salida.println("<center><h2>Tabla de multiplicar del "+num+"</h2></center>");
salida.println("<table align='center' border='1'>");
for(int i=1; i<=10; i++){
salida.println("<tr><td bgcolor='#aaaaff'>"+num+" x "+i+"</td>");
salida.println("<td bgcolor='yellow'>"+(num*i)+"</td>");
}
salida.println("</table>");
salida.println("<br/><br/><center><a href='indice.html'>Volver</a></center>");
salida.println("</body></html>");
salida.close();
}
}
Ejecuto el archivo "index.html" y compruebo que funciona.
En este caso, he utilizado el Servidor de Apache Tomcat.