Foros del Web » Programación para mayores de 30 ;) » Java »

ayuda para un ignorante de java servlets

Estas en el tema de ayuda para un ignorante de java servlets en el foro de Java en Foros del Web. Hola a todos. Me han pasado un código java servlet, lenguaje que desconozco por completo. Me gustaría que alguien que conozca PHP y java me ...
  #1 (permalink)  
Antiguo 26/03/2004, 01:44
 
Fecha de Ingreso: marzo-2004
Mensajes: 5
Antigüedad: 20 años, 2 meses
Puntos: 0
ayuda para un ignorante de java servlets

Hola a todos. Me han pasado un código java servlet, lenguaje que desconozco por completo. Me gustaría que alguien que conozca PHP y java me echara una mano y me pasara el código que voy a postear a PHP:

public class SEjemploRespuesta extends HttpServlet
{
public void init(ServletConfig config) throws ServletException
{
super.init(config);
}

public void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException
{
resp.setContentType("text/plain");
PrintWriter tuberia = new PrintWriter(resp.getOutputStream());
tuberia.println("ok");
tuberia.flush();
tuberia.close();

// recogida de parametros
String market = (String)req.getParameter("market");
String referencia = (String)req.getParameter("referencia");
String result = (String)req.getParameter("result");
String fecha = (String)req.getParameter("fecha");
String hora = (String)req.getParameter("hora");
String pago = (String)req.getParameter("pago");
String store = (String)req.getParameter("store");
String autorizacion = (String)req.getParameter("autorizacion");
String idtran = (String)req.getParameter("idtran");
String coderror = (String)req.getParameter("coderror");
String deserror = (String)req.getParameter("deserror");

// Actualizacion en BD
}
}


Muchas gracias de antemano.
  #2 (permalink)  
Antiguo 26/03/2004, 05:37
myd
 
Fecha de Ingreso: noviembre-2003
Mensajes: 12
Antigüedad: 20 años, 6 meses
Puntos: 0
Hola,

La verdad no se nada de PHP, pero te voy a decir que hace el servlet (por cierto, esa servlet funciona?).

En el metodo init debes poner el código que quieres que se ejecute sólo una vez, ya que el web server llama a ese método sólo en la creación de la servlet (por ejemplo abrir una conexión con base de datos)

PrintWriter out = response.getWriter(); (tu lo has llamado tuberia)
Esta parte de codigo es para construir la salida del servlet, por ejemplo, formatear como html los resultados de realizar una consulta a la base de datos, te pongo un ejemplo:
out.println("<html>");
out.println("<head><title>simpleServlet</title></head>");
out.println("<body>");
out.println("<center>");
out.println("<table>");
out.println("<tr>");
out.println("<td>hola</td>");
out.println("</tr>");
out.println("</table>");
out.println("</center>");
out.println("</body></html>");
---------------
String market = (String)req.getParameter("market");
String referencia = (String)req.getParameter("referencia");
aquí estas recogiendo los parametros que envias de un formulario html. en el action del formulario habras indicado la direccion del servlet, y esta es la manera que java tiene de recogerlos.

posteriormente esos parametros los utilizaras para lanzar una sentencia sql del tipo:
String sentenciaSelect = "";
sentenciaSelect = "SELECT * from tabla where nombre_campo= '" + market +"'";
esa cadena sentenciaSelect se la tendras que pasar a una clase java que implemente la logica de acceso a base de datos, y con los datos que te devuelve podras construir la salida html como te he explicado antes.

P. D. la construccion de la salida ha de ser posterior a la recogida de parametros, si no no tiene mucho sentido


Espero que te sirva, saludos
  #3 (permalink)  
Antiguo 26/03/2004, 06:59
 
Fecha de Ingreso: marzo-2004
Mensajes: 5
Antigüedad: 20 años, 2 meses
Puntos: 0
muchísimas gracias

muchísimas gracias por contestarme. Así por lo menos puedo saber lo que está haciendo ese código.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:19.