Commit 50399e39 by Matias Ferreira

agregando detalles aprendidos en la clase de hoy

parent f4ce1947
package com.roshka.webprojecttest.servlets;
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("/factorial")
public class FactorialRequestServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException
{
// req -> datos que envia el navegador al servidor de aplicaciones
// resp -> la respuesta que envia el servidor de aplicaciones al navegador
PrintWriter pw = new PrintWriter(resp.getOutputStream());
// String s1 = req.getParameter("s1");
// String s2 = req.getParameter("s2");
pw.write("<html>"
+ "<head>"
+ "<title>Hola, bienvenidos factorializador</title>"
+ "</head>"
+ "<body>"
+ "<h1>Soy un factorializador</h1>"
+ "<div>"
+ "<form action=\"factorial-response\" >"
+ "Introduzca el numero: <input type=\"text\" name=number><br>"
+ "<input type=\"submit\">"
+ "</form>"
+ "</div>"
+ "</body>"
+ "</html>");
pw.close();
}
}
...@@ -10,15 +10,20 @@ import javax.servlet.http.HttpServlet; ...@@ -10,15 +10,20 @@ import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
@WebServlet("/factorial-response") @WebServlet("/factorial")
public class FactorialResponseServlet extends HttpServlet { public class FactorialServlet extends HttpServlet {
protected void doGet(HttpServletRequest req, HttpServletResponse resp) protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException throws ServletException, IOException
{ {
PrintWriter pw = new PrintWriter(resp.getOutputStream()); PrintWriter pw = new PrintWriter(resp.getOutputStream());
Boolean valido=true; Boolean valido=true;
String parametro = req.getParameter("number"); String parametro = req.getParameter("number");
if(parametro.length() <1) if(parametro == null ) {
initForm(pw);
}
else {
if(parametro.equals(""))
valido=false; valido=false;
for(int i = 0 ; i < parametro.length(); i++) { for(int i = 0 ; i < parametro.length(); i++) {
if( ( !Character.isDigit(parametro.charAt(i)) && i > 0) && !(Character.isDigit(parametro.charAt(i)) && i == 0 && parametro.charAt(i) != '-' ) ) { if( ( !Character.isDigit(parametro.charAt(i)) && i > 0) && !(Character.isDigit(parametro.charAt(i)) && i == 0 && parametro.charAt(i) != '-' ) ) {
...@@ -27,6 +32,48 @@ public class FactorialResponseServlet extends HttpServlet { ...@@ -27,6 +32,48 @@ public class FactorialResponseServlet extends HttpServlet {
} }
} }
if (!valido) { if (!valido) {
error(pw, parametro);
}
else {
Integer numero = Integer.parseInt(parametro);
if(numero > 100) {
greaterThan100(pw, numero);
}
else if(numero<0) {
negative(pw);
}
else{
long facto=1;
for (long i = 2; i <=numero;i++)
facto*=i;
factoDisplay(pw, numero, facto);
}
}
}
pw.close();
}
void factoDisplay(PrintWriter pw, Integer numero, Long facto) {
pw.write("<html>"
+ "<head>"
+ "<title>Hola, bienvenidos al factorializador</title>"
+ "</head>"
+ "<body>"
+ "<h1>Soy un generador de factorial de numeros</h1>"
+ "<div>"
+ "<form action=\"factorial-response\" >"
+ "Introduzca el numero: <input type=\"text\" name=number><br>"
+ "<input type=\"submit\">"
+ "</form>"
+ "</div>"
+ "<div>"
+ "<p>El factorial de "+ numero+" es: " + facto +"</p>"
+ "</div>"
+ "</body>"
+ "</html>");
}
void error(PrintWriter pw, String parametro) {
pw.write("<html>" pw.write("<html>"
+ "<head>" + "<head>"
+ "<title>Error de parametro</title>" + "<title>Error de parametro</title>"
...@@ -35,11 +82,8 @@ public class FactorialResponseServlet extends HttpServlet { ...@@ -35,11 +82,8 @@ public class FactorialResponseServlet extends HttpServlet {
+ "No se puede generarla tabla de multiplicar. Valor del parametro \" " + parametro + " \" invalido." + "No se puede generarla tabla de multiplicar. Valor del parametro \" " + parametro + " \" invalido."
+ "</body>" + "</body>"
+ "</html>"); + "</html>");
} }
else { void greaterThan100(PrintWriter pw, Integer numero) {
Integer numero = Integer.parseInt(parametro);
if(numero > 100) {
pw.write("<html>" pw.write("<html>"
+ "<head>" + "<head>"
+ "<title>Error de parametro</title>" + "<title>Error de parametro</title>"
...@@ -50,7 +94,7 @@ public class FactorialResponseServlet extends HttpServlet { ...@@ -50,7 +94,7 @@ public class FactorialResponseServlet extends HttpServlet {
+ "</html>"); + "</html>");
} }
else if(numero<0) { void negative(PrintWriter pw) {
pw.write("<html>" pw.write("<html>"
+ "<head>" + "<head>"
+ "<title>Error de parametro</title>" + "<title>Error de parametro</title>"
...@@ -60,30 +104,22 @@ public class FactorialResponseServlet extends HttpServlet { ...@@ -60,30 +104,22 @@ public class FactorialResponseServlet extends HttpServlet {
+ "</body>" + "</body>"
+ "</html>"); + "</html>");
} }
else{ void initForm(PrintWriter pw) {
long facto=1;
for (long i = 2; i <=numero;i++)
facto*=i;
pw.write("<html>" pw.write("<html>"
+ "<head>" + "<head>"
+ "<title>Hola, bienvenidos al factorializador</title>" + "<title>Hola, bienvenidos factorializador</title>"
+ "</head>" + "</head>"
+ "<body>" + "<body>"
+ "<h1>Soy un generador de factorial de numeros</h1>" + "<h1>Soy un factorializador</h1>"
+ "<div>" + "<div>"
+ "<form action=\"factorial-response\" >" + "<form action=\"factorial-response\" >"
+ "Introduzca el numero: <input type=\"text\" name=number><br>" + "Introduzca el numero: <input type=\"text\" name=number><br>"
+ "<input type=\"submit\">" + "<input type=\"submit\">"
+ "</form>" + "</form>"
+ "</div>" + "</div>"
+ "<div>"
+ "<p>El factorial de "+ numero+" es: " + facto +"</p>"
+ "</div>"
+ "</body>" + "</body>"
+ "</html>"); + "</html>");
}
}
pw.close();
} }
} }
package com.roshka.webprojecttest.servlets;
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("/show-me-the-bits")
public class ShowMeTheBitsRequestServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException
{
PrintWriter pw = new PrintWriter(resp.getOutputStream());
pw.write("<html>"
+ "<head>"
+ "<title>Hola, bienvenidos al show me the bits</title>"
+ "</head>"
+ "<body>"
+ "<h1>Soy un conversor sistemas de numeracion</h1>"
+ "<div>"
+ "<form action=\"show-me-the-bits-response\" >"
+ "Introduzca el numero: <input type=\"text\" name=number><br>"
+ "<input type=\"submit\">"
+ "</form>"
+ "</div>"
+ "</body>"
+ "</html>");
pw.close();
}
}
...@@ -11,8 +11,8 @@ import javax.servlet.http.HttpServlet; ...@@ -11,8 +11,8 @@ import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
@WebServlet("/show-me-the-bits-response") @WebServlet("/show-me-the-bits")
public class ShowMeTheBitsResponseServlet extends HttpServlet { public class ShowMeTheBitsServlet extends HttpServlet {
protected void doGet(HttpServletRequest req, HttpServletResponse resp) protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException throws ServletException, IOException
{ {
...@@ -20,6 +20,10 @@ public class ShowMeTheBitsResponseServlet extends HttpServlet { ...@@ -20,6 +20,10 @@ public class ShowMeTheBitsResponseServlet extends HttpServlet {
Boolean valido=true; Boolean valido=true;
String parametro = req.getParameter("number"); String parametro = req.getParameter("number");
Integer [] vectorResultado = new Integer [16]; Integer [] vectorResultado = new Integer [16];
if(parametro == null) {
initForm(pw);
}
else {
String tipo=""; String tipo="";
if(parametro.length() < 1) if(parametro.length() < 1)
valido=false; valido=false;
...@@ -61,19 +65,35 @@ public class ShowMeTheBitsResponseServlet extends HttpServlet { ...@@ -61,19 +65,35 @@ public class ShowMeTheBitsResponseServlet extends HttpServlet {
if(validAux > 65535) if(validAux > 65535)
valido = false; valido = false;
if (!valido) { if (!valido) {
invalido(pw, parametro);
}
else {
transformacion(tipo, parametro, vectorResultado);
theTable(pw, vectorResultado);
}
}
pw.close();
}
void initForm(PrintWriter pw) {
pw.write("<html>" pw.write("<html>"
+ "<head>" + "<head>"
+ "<title>Error de parametro</title>" + "<title>Hola, bienvenidos al show me the bits</title>"
+ "</head>" + "</head>"
+ "<body>" + "<body>"
+ "No se puede generarla tabla de multiplicar. Valor del parametro \"" + parametro + "\" invalido." + "<h1>Soy un conversor sistemas de numeracion</h1>"
+ "<div>"
+ "<form action=\"show-me-the-bits\" >"
+ "Introduzca el numero: <input type=\"text\" name=number><br>"
+ "<input type=\"submit\">"
+ "</form>"
+ "</div>"
+ "</body>" + "</body>"
+ "</html>"); + "</html>");
} }
else {
transformacion(tipo, parametro, vectorResultado);
void theTable(PrintWriter pw, Integer [] vectorResultado) {
pw.write("<html>" pw.write("<html>"
+ "<head>" + "<head>"
+ "<title>Hola, bienvenidos al conversor de numeros</title>" + "<title>Hola, bienvenidos al conversor de numeros</title>"
...@@ -81,7 +101,7 @@ public class ShowMeTheBitsResponseServlet extends HttpServlet { ...@@ -81,7 +101,7 @@ public class ShowMeTheBitsResponseServlet extends HttpServlet {
+ "<body>" + "<body>"
+ "<h1>Soy un conversor de sistemas de numeracion</h1>" + "<h1>Soy un conversor de sistemas de numeracion</h1>"
+ "<div>" + "<div>"
+ "<form action=\"show-me-the-bits-response\" >" + "<form action=\"show-me-the-bits\" >"
+ "Introduzca el numero: <input type=\"text\" name=number><br>" + "Introduzca el numero: <input type=\"text\" name=number><br>"
+ "<input type=\"submit\">" + "<input type=\"submit\">"
+ "</form>" + "</form>"
...@@ -110,9 +130,17 @@ public class ShowMeTheBitsResponseServlet extends HttpServlet { ...@@ -110,9 +130,17 @@ public class ShowMeTheBitsResponseServlet extends HttpServlet {
+ "</body>" + "</body>"
+ "</html>"); + "</html>");
} }
pw.close();
void invalido(PrintWriter pw, String parametro) {
pw.write("<html>"
+ "<head>"
+ "<title>Error de parametro</title>"
+ "</head>"
+ "<body>"
+ "No se puede generarla tabla de bits. Valor del parametro \"" + parametro + "\" invalido."
+ "</body>"
+ "</html>");
} }
public void transformacion(String tipo, String valor, Integer [] resultado) { public void transformacion(String tipo, String valor, Integer [] resultado) {
......
...@@ -18,7 +18,10 @@ public class SumaRequestServlet extends HttpServlet { ...@@ -18,7 +18,10 @@ public class SumaRequestServlet extends HttpServlet {
{ {
PrintWriter pw = new PrintWriter(resp.getOutputStream()); PrintWriter pw = new PrintWriter(resp.getOutputStream());
String s1 = req.getParameter("s1");
String s2 = req.getParameter("s2");
if(s1 != null && s2 != null) {
pw.write("<html>" pw.write("<html>"
+ "<head>" + "<head>"
+ "<title>Hola, bienvenidos al sumador</title>" + "<title>Hola, bienvenidos al sumador</title>"
...@@ -26,7 +29,21 @@ public class SumaRequestServlet extends HttpServlet { ...@@ -26,7 +29,21 @@ public class SumaRequestServlet extends HttpServlet {
+ "<body>" + "<body>"
+ "<h1>Soy un sumador</h1>" + "<h1>Soy un sumador</h1>"
+ "<div>" + "<div>"
+ "<form action=\"suma-response\">" + "<p>Operador s1: " + s1 + "</p>"
+ "<p>Operador s2: " + s2 + "</p>"
+ "<p>s1 + s2: " + (Double.parseDouble(s1) + Double.parseDouble(s2)) + "</p>"
+ "</div>"
+ "</body>"
+ "</html>");
}else {
pw.write("<html>"
+ "<head>"
+ "<title>Hola, bienvenidos al sumador</title>"
+ "</head>"
+ "<body>"
+ "<h1>Soy un sumador</h1>"
+ "<div>"
+ "<form action=\"suma\">"
+ "Enter 1st number: <input type=\"text\" name=s1><br>" + "Enter 1st number: <input type=\"text\" name=s1><br>"
+ "Enter 2nd number: <input type=\"text\" name=s2><br>" + "Enter 2nd number: <input type=\"text\" name=s2><br>"
+ "<input type=\"submit\">" + "<input type=\"submit\">"
...@@ -34,6 +51,8 @@ public class SumaRequestServlet extends HttpServlet { ...@@ -34,6 +51,8 @@ public class SumaRequestServlet extends HttpServlet {
+ "</div>" + "</div>"
+ "</body>" + "</body>"
+ "</html>"); + "</html>");
}
pw.close(); pw.close();
......
package com.roshka.webprojecttest.servlets;
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("/tabla-multiplicar")
public class TablaMultiplicarRequestServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException
{
PrintWriter pw = new PrintWriter(resp.getOutputStream());
pw.write("<html>"
+ "<head>"
+ "<title>Hola, Aqui te enseño las tablas de la multiplicacion</title>"
+ "</head>"
+ "<body>"
+ "<h1>Soy un generador de tablas de multiplicar</h1>"
+ "<div>"
+ "<form action=\"tabla-multiplicar-response\">"
+ "Enter 1st number: <input type=\"text\" name=number><br>"
+ "<input type=\"submit\">"
+ "</form>"
+ "</div>"
+ "</body>"
+ "</html>");
pw.close();
}
}
...@@ -10,14 +10,18 @@ import javax.servlet.http.HttpServlet; ...@@ -10,14 +10,18 @@ import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
@WebServlet("/tabla-multiplicar-response") @WebServlet("/tabla-multiplicar")
public class TablaMultiplicarResponseServelet extends HttpServlet { public class TablaMultiplicarServelet extends HttpServlet {
protected void doGet(HttpServletRequest req, HttpServletResponse resp) protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException throws ServletException, IOException
{ {
PrintWriter pw = new PrintWriter(resp.getOutputStream()); PrintWriter pw = new PrintWriter(resp.getOutputStream());
Boolean valido=true; Boolean valido=true;
String parametro = req.getParameter("number"); String parametro = req.getParameter("number");
if(parametro == null) {
initForm(pw);
}else {
if(parametro.length() <1) if(parametro.length() <1)
valido=false; valido=false;
for(int i = 0 ; i < parametro.length(); i++) { for(int i = 0 ; i < parametro.length(); i++) {
...@@ -27,40 +31,44 @@ public class TablaMultiplicarResponseServelet extends HttpServlet { ...@@ -27,40 +31,44 @@ public class TablaMultiplicarResponseServelet extends HttpServlet {
} }
} }
if (!valido) { if (!valido) {
pw.write("<html>" invalid(pw, parametro);
+ "<head>"
+ "<title>Error de parametro</title>"
+ "</head>"
+ "<body>"
+ "No se puede generarla tabla de multiplicar. Valor del parametro \"" + parametro + "\" invalido."
+ "</body>"
+ "</html>");
} }
else { else {
Integer numero = Integer.parseInt(parametro); Integer numero = Integer.parseInt(parametro);
if(numero > 100) { if(numero > 100) {
pw.write("<html>" greaterThan100(pw, numero);
+ "<head>"
+ "<title>Error de parametro</title>"
+ "</head>"
+ "<body>"
+ "Mi programa solo conoce la tabla de multiplicar hasta el numero 100. El numero pasado fue: "+numero
+ "</body>"
+ "</html>");
} }
else if(numero<0) { else if(numero<0) {
negative(pw);
}
else{
theTable(pw, numero);
}
}
}
pw.close();
}
void initForm(PrintWriter pw) {
pw.write("<html>" pw.write("<html>"
+ "<head>" + "<head>"
+ "<title>Error de parametro</title>" + "<title>Hola, Aqui te enseño las tablas de la multiplicacion</title>"
+ "</head>" + "</head>"
+ "<body>" + "<body>"
+ "Mi programa no sabe las tablas de multiplicar de numeros negativos" + "<h1>Soy un generador de tablas de multiplicar</h1>"
+ "<div>"
+ "<form action=\"tabla-multiplicar\">"
+ "Enter 1st number: <input type=\"text\" name=number><br>"
+ "<input type=\"submit\">"
+ "</form>"
+ "</div>"
+ "</body>" + "</body>"
+ "</html>"); + "</html>");
} }
else{
void theTable(PrintWriter pw, Integer numero) {
pw.write("<html>" pw.write("<html>"
+ "<head>" + "<head>"
+ "<title>Hola, bienvenidos al multiplicador</title>" + "<title>Hola, bienvenidos al multiplicador</title>"
...@@ -68,7 +76,7 @@ public class TablaMultiplicarResponseServelet extends HttpServlet { ...@@ -68,7 +76,7 @@ public class TablaMultiplicarResponseServelet extends HttpServlet {
+ "<body>" + "<body>"
+ "<h1>Soy un generador de tablas de multiplicar</h1>" + "<h1>Soy un generador de tablas de multiplicar</h1>"
+ "<div>" + "<div>"
+ "<form action=\"tabla-multiplicar-response\">" + "<form action=\"tabla-multiplicar\">"
+ "Enter 1st number: <input type=\"text\" name=number><br>" + "Enter 1st number: <input type=\"text\" name=number><br>"
+ "<input type=\"submit\">" + "<input type=\"submit\">"
+ "</form>" + "</form>"
...@@ -88,7 +96,35 @@ public class TablaMultiplicarResponseServelet extends HttpServlet { ...@@ -88,7 +96,35 @@ public class TablaMultiplicarResponseServelet extends HttpServlet {
+ "</body>" + "</body>"
+ "</html>"); + "</html>");
} }
void invalid(PrintWriter pw, String parametro) {
pw.write("<html>"
+ "<head>"
+ "<title>Error de parametro</title>"
+ "</head>"
+ "<body>"
+ "No se puede generarla tabla de multiplicar. Valor del parametro \"" + parametro + "\" invalido."
+ "</body>"
+ "</html>");
} }
pw.close(); void greaterThan100(PrintWriter pw, Integer numero) {
pw.write("<html>"
+ "<head>"
+ "<title>Error de parametro</title>"
+ "</head>"
+ "<body>"
+ "Mi programa solo conoce la tabla de multiplicar hasta el numero 100. El numero pasado fue: "+numero
+ "</body>"
+ "</html>");
}
void negative(PrintWriter pw) {
pw.write("<html>"
+ "<head>"
+ "<title>Error de parametro</title>"
+ "</head>"
+ "<body>"
+ "Mi programa no sabe las tablas de multiplicar de numeros negativos"
+ "</body>"
+ "</html>");
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment