Red de conocimiento informático - Material del sitio web - ¿Por qué siempre es incorrecto conectar datos en un servlet en el entorno de desarrollo de ideas Intellij?

¿Por qué siempre es incorrecto conectar datos en un servlet en el entorno de desarrollo de ideas Intellij?

¿Por qué siempre es incorrecto conectar datos en servlet en el entorno de desarrollo de ideas Intellij?

Puntos de bonificación: quedan 100 - 7 horas hasta el final de la pregunta

Utilizo el entorno de desarrollo Intellij idea 8.1

Primero defina una clase ConnectDB para conectarse a la base de datos, como se muestra a continuación

paquete dao;

Rango de combinación de acceso a Ark iekbrfjhebjwulq no

importar po.Person;

importar java.sql.*;

importar java.util.List;

importar java.util.ArrayList;

/**

* Creado por IntelliJ IDEA.

* Usuario: hp

* Fecha: 2009-8-29

* Hora: 13:22:40

* Para cambiar esta plantilla utilice lo siguiente.

* Para cambiar esta plantilla, utilice Archivo | Plantillas de archivo.

*/

clase pública ConnectDB {

public ArrayList connect(){

Declaración stmt=null;

Conexión conn=null;

ArrayList al =new ArrayList();

prueba {

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

Pruebe {

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

} catch (ClassNotFoundException e) {

System.out.println("Controlador no encontrado");

e.printStackTrace();

}

String url=" jdbc:mysql://localhost:3306/campusforum";

pruebe {

conn= DriverManager.getConnection(url, "root", "yu");

stmt=conn.createStatement();

} catch (Excepción e) {

System.out.println("Error de conexión");

e.printStackTrace();

}

String sql="seleccionar * de los usuarios";

prueba {

ResultSet rs =stmt.executeQuery(sql);

while(rs.next()){

Persona p=nueva Persona ();

p.setName( rs.getString("nombre"));

al.add(p);

}

}

} captura ( SQLException e) {

System.out.println("¡Error en la operación de la base de datos! ");

}

return al;

}

public static void main(String args[]){

ConnectDB cDB=new ConnectDB();

Lista lista= cDB.connect();

for(int i=0;i

Persona p=(Persona)list.get(i);

System.out.println("Nombre "+p.getName( ));

}

}

}

No hay errores en las pruebas mencionadas anteriormente y también se puede encontrar la información de la base de datos

Pero se produjo un error al llamar al método de conexión de esta clase en el servlet AutoComplete. El código es el siguiente

protected void doGet(solicitud HttpServletRequest, HttpServletResponse.

respuesta) lanza ServletException, IOException {

//Recibir parámetros

String word= request.getParameter("word");

PrintWriter out= respuesta.getWriter ();

//Consulta la información coincidente del elemento de la base de datos

ConnectDB cDB=new ConnectDB();<

System.out.println("en el servlet de Autocompletar");

ArrayList list=cDB.connect();

for(int i=0;i

Persona p=(Persona)list.get(i);

//devuelve los datos

out.print("< word> "+p.getName()+"");

}

}

Encontramos un problema al usar este servlet. No encuentro ningún error en el controlador. Estoy muy deprimido. Funciona bien en la clase, pero ¿por qué no funciona en el servlet?

Por favor orientenme, muchas gracias! ! !

¡Esta es una gran idea!