在tomcat

时间:2016-04-27 03:02:56

标签: java html mysql tomcat servlets

经过一堆麻烦的mySQL和tomcat后,我设法让它们全部同时工作,现在是我实现servlet连接所有东西的时候了,用我的数据库和查询做了奇妙的事情,除了之后另一个漏洞我不能用它来获得好结果。

界面有点粗糙,变量名称在这个过程中变得混乱,一切似乎都很好但是当我尝试实际使用这个时我只得到一个空白页面而我无法理解它,这是我的代码:

html中的索引:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title>Escuela</title>
</head>

<body>
<div id="section">
<h1>Busqueda de clientes</h1>
<p><form action="./ConexionAlumnos" method="post">
        nombre: <input type="text" id="nombre" name="nombre" />
        <input type="submit" />
</form></p>
</div>
</body>
</html>

这是web.xml:

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
                  http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
version="3.0"
metadata-complete="true">

<display-name>
  Aplicacion  para escuela
</display-name>

<description>
Trae los alugnos de la base
</description>

<session-config>
<session-timeout>
    30
</session-timeout>
</session-config>

<servlet>

    <servlet-name>
         ConexionAlumnos
    </servlet-name>

    <servlet-class>
         ConexionAlumnos
    </servlet-class>

</servlet>

<servlet-mapping>

    <servlet-name>
            ConexionAlumnos
    </servlet-name>

    <url-pattern>
        /ConexionAlumnos
    </url-pattern>

</servlet-mapping>
</web-app>

我的.JSP:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<html>
<head>
<title>Escuela</title>
</head>
<body>
<h1>Busqueda de clientes</h1>
<table border="1">
<tr>
        <th>ID Cliente</th>
        <th>Nombre</th>
        <th>Direccion</th>
        <th>tamanio</th>
        <th>Id Ruta de Reparto</th>
        <th>Descuento</th>
</tr>
 <c:forEach items="${requestScope.clientes}" var="al">
  <tr>
        <td>
    <c:out value="${al.idCliente}" />
    <br />
        </td>
        <td>
    <c:out value="${al.nombre}" />
    <br />
        </td>
        <td>
    <c:out value="${al.direccion}" />
    <br />
        </td>
        <td>
    <c:out value="${al.tamanio}" />
    <br />
        </td>
        <td>
    <c:out value="${al.id_reparto}" />
    <br />
        </td>
        <td>
    <c:out value="${al.descuento}" />
    <br />
        </td>           
    </tr>
 </c:forEach>
</table>
<br />
<a href="./index.html">Regresar</a>
</body>
</html>

最后我的serlvet .java:

import java.io.*;
import java.sql.*;
import java.util.Vector;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.swing.JOptionPane;

public class ConexionAlumnos  extends HttpServlet{
@Override
public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
    doPost(request, response);

}

@Override
public void doPost(HttpServletRequest request, HttpServletResponse response){
    // TODO Auto-generated method stub
    String base = "polanco";
    String usuario = "usuario";
    String password = "admin";
    Connection con = null;
    Statement stat = null;
    ResultSet res = null;

    try {
        Class.forName("com.mysql.jdbc.Driver");

    String url = "jdbc:mysql://localhost:8080/"+base;

    System.out.println(url);

        con = DriverManager.getConnection(url,usuario,password);




        stat = con.createStatement();

    String sql = "SELECT * FROM clientes;";

    String nombre = JOptionPane.showInputDialog("dame un nombre para buscar");
    if(!nombre.equals("")){
        sql = "SELECT * FROM clientes WHERE nombre=\"" + nombre + "\";";
    }



        res = stat.executeQuery(sql);

    Vector<Clientes> clientes = new Vector<Clientes>();


        while(res.next()){

            Clientes aux = new Clientes();

            aux.setIdClientes(res.getInt("idClientes"));
            aux.setNombre(res.getString("nombre"));
            aux.setDireccion(res.getString("direccion"));
            aux.setTamanio(res.getString("tamanio"));
            aux.setDireccion(res.getString("direccion"));
            aux.setId_repartos(res.getInt("id_repartos"));
            aux.setDescuento(res.getDouble("descuento"));

            clientes.add(aux);

        }



        stat.close();


        con.close();
        request.setAttribute("clientes",clientes);
        RequestDispatcher disp =  getServletContext().getRequestDispatcher("/procesa.jsp");


        if(disp!=null){
            disp.forward(request,response);
        }

    } catch (Exception e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    }

}
public void Get(HttpServletRequest request, HttpServletResponse response){
    // TODO Auto-generated method stub
    String base = "polanco";
    String usuario = "usuario";
    String password = "admin";
    Connection con = null;
    Statement stat = null;
    ResultSet res = null;

    try {
        Class.forName("com.mysql.jdbc.Driver");

    String url = "jdbc:mysql://localhost:8080/"+base;

    System.out.println(url);

        con = DriverManager.getConnection(url,usuario,password);




        stat = con.createStatement();

    String sql = "SELECT * FROM clientes;";

    String nombre = JOptionPane.showInputDialog("dame un nombre para buscar");
    if(!nombre.equals("")){
        sql = "SELECT * FROM clientes WHERE nombre=\"" + nombre + "\";";
    }



        res = stat.executeQuery(sql);

    Vector<Clientes> clientes = new Vector<Clientes>();


        while(res.next()){

            Clientes aux = new Clientes();

            aux.setIdClientes(res.getInt("idClientes"));
            aux.setNombre(res.getString("nombre"));
            aux.setDireccion(res.getString("direccion"));
            aux.setTamanio(res.getString("tamanio"));
            aux.setDireccion(res.getString("direccion"));
            aux.setId_repartos(res.getInt("id_repartos"));
            aux.setDescuento(res.getDouble("descuento"));

            clientes.add(aux);

        }



        stat.close();


        con.close();
        request.setAttribute("clientes",clientes);
        RequestDispatcher disp =  getServletContext().getRequestDispatcher("/procesa.jsp");


        if(disp!=null){
            disp.forward(request,response);
        }

    } catch (Exception e1) {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    }

}

}

创建所需的类,与数据库的连接具有正确的凭据,当我运行它时,所有似乎都工作正常,直到我发送&#34;表格&#34;从网页上得到的回报是一个空白页面,没有任何HTML或错误信息。

0 个答案:

没有答案