Autor
|
Tema: Como Realizar un Buscador en Java y MySql? (Leído 22,082 veces)
|
hack-4-life
|
Buenas saludos a todos,bueno mi problema es que intento realizar un buscador en java,pero lo quiero es que cuando vaya escribiendo en el JTextField();y me vayan apareciendo los posibles resultados,lo estoy implementando con esto: public String[] buscarpersona (int id ){ try { Class.forName (driver); System. out. println ("su conexion ha sido muy exitosa"); stmt = con.createStatement(); rs=stmt.executeQuery("SELECT * FROM personas WHERE personaid='" +id+"'"); datos =new String[rsmd. getColumnCount()]; int cont2=1; //ciclo de llenado de resultset al arreglo para poder mandarlo al programa //arreglo-->0 //resultset-->1 while(rs.next()){ for(int cont=0;cont<rsmd.getColumnCount();cont++){ datos[cont]=rs.getString(cont2); cont2++; } } stmt.close(); con.close(); return datos; } e.printStackTrace(); System. err. println ( e. getMessage ()); return datos; } }
y esto es lo que tengo en java: private void btnbuscarActionPerformed (java. awt. event. ActionEvent evt ){ try{ int id =Integer. parseInt(txtReg. getText()); datos=bd.BuscarPersona(id); if(datos!=null){ //datos[0] corresponde al id txtNombre.setText(datos[1]); txtDomicilio.setText(datos[2]); txtMail.setText(datos[3]); txtCiudad.setText(datos[4]); } JOptionPane. showMessageDialog(this, "debe escribir un numero en el campo de registro", "aviso", JOptionPane. ERROR_MESSAGE); txtReg.grabFocus(); txtReg.selectAll(); } }
aver si alguien me puede recomendar algo,estaba buscando sobre keylistener,no se si alguno de ustedes han hecho algo parecido,saludos y gracias de antemano xauz...
|
|
« Última modificación: 20 Marzo 2011, 11:12 am por Debci »
|
En línea
|
""DE QUE SIRVE EL CONOCIMIENTO SI SE PRIVA DE SU DISTRIBUCION"
|
|
|
NetJava
Desconectado
Mensajes: 195
|
Buenas,
No se si esto te ayudará o si lo he entendido bien. Pero si lo que quieres es que cuando empiezas a escribir en "JTextField" te empiecen a salir posibles opciones lo que se tendría que hacer es en la SQL poner un "WHERE palabra LIKE '%posiblepalabra%'" (más o menos no se si falta el =), y además controlar el evento del "JTextField" para que vayan apareciendo las posibilidades según se va escribiendo.
Bueno espero que esto te ayude, saludos! Y si esto es lo que buscabas y tienes dudas pregunta.
|
|
|
En línea
|
|
|
|
hack-4-life
|
gracias por responder y si lo hago con un keylistener como tendria su estructura no se si me pueds pasar un ejemplo o como hacerlo con ese evento...seguire buscando gracias por tu respuesta saludos
|
|
|
En línea
|
""DE QUE SIRVE EL CONOCIMIENTO SI SE PRIVA DE SU DISTRIBUCION"
|
|
|
NetJava
Desconectado
Mensajes: 195
|
Buenas, Yo lo que tu quieres hacer lo hice en .net, y he supuesto como se tendría que hacer en Java, jajaja la verdad es que yo estoy aprendiendo Java. A ver si esto te puede ayudar un poco más. _____________________________________________________________________ { { // Verificar si la tecla pulsada se encuentra en la base de datos. char caracter = e.getKeyChar(); //Se recogería el valor. Se podría buscar //por el carácter o se podían ir agrupando para la búsqueda en la BD. //Supongo que aquí es donde se envía la información encontrada por ejemplo //a un Combobox para ver todas las opciones. } });
_____________________________________________________________________ SELECT * FROM Personas WHERE Persona LIKE '%'"+ ContenidoJjtextfield1 +"'%';
_____________________________________________________________________ Bueno pues espero no haberme confundido, pero creo que sería algo así. Ya que en java no sabía como se hacía he hecho un ejemplo que pensaba que podía funcionar, pero no... En el siguiente ejemplo salta el evento del JTextField cuando se presiona "enter", pero te lo pongo por si... jajajaja. _____________________________________________________________________ package PackEventJTextField; import java.*; import java.awt.*; import javax.swing.*; public class Interfaz extends JFrame{ private String memoria =jTextField1. getText(); public Interfaz(){ super("Prueba evento JTextField"); definirventana(); public void actionPerformed (java. awt. event. ActionEvent evt ) { jTextField1ActionPerformed(evt); } }); this.setSize(200,200); this.setVisible(true); this. setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE); } public void definirventana(){ // obtener panel de contenido y establecer su esquema Container contenedor = this. getContentPane(); contenedor.setLayout( esquema ); } private void jTextField1ActionPerformed (java. awt. event. ActionEvent evt ) { if (!memoria.equals(jTextField1.getText())){ panel.showMessageDialog(null,"ha cambiado el texto"); } } }
____________________________________________________________________ Saludos!
|
|
« Última modificación: 23 Marzo 2011, 12:19 pm por NetJava »
|
En línea
|
|
|
|
hack-4-life
|
o woww excelente informacion,ams o menos eso es lo que quiero hacer,una vez lo vi un tutorial pero con fox pro,la zorra si te da algunas ventanas a utilizar querys y estar conectado a la base de datos,tambien de lo que te digo es como por ejemplo en youtube escribes algo y te muestra todo los posibles que puede haber,con lo que me acabas de decir lo voy a implementar,lo tengo que hacer cueste lo que cuestee,tenia pensando implementar la funcion match case en mysql,que con like,lo hare de las dos formas,gracias xd,lo voy a implementar,me acabas de dar una idea,si tengo dudas,lo posteo suertee
|
|
|
En línea
|
""DE QUE SIRVE EL CONOCIMIENTO SI SE PRIVA DE SU DISTRIBUCION"
|
|
|
NetJava
Desconectado
Mensajes: 195
|
Buenas, pues me alegro que te haya servido de algo jajaja!!!
Saludos!
|
|
|
En línea
|
|
|
|
kento10110
Desconectado
Mensajes: 1
|
HOla gente!! me encuentro en un problema con una aplicacion que realizo: seria factible que vieran mi codigo: public static Facultad_escuela buscarFaEs(String es) { Facultad_escuela r = null; String q = "select f.nombre as nombre, e.nombre as nombre" + "from facultad f " + "inner join escuela e on f.idFacultad=e.idFacultad" + "WHERE e.nombre LIKE '"+es+"%'"; TestConexion.ejecutarConsulta(q); r =dameFaEsDelaBD(); return r; } ahi lo tienen, el problema es que genera error al probarlo, revisé lo resto de codigo, y esta bien. lo curioso es que si saco la ultima linea + "WHERE e.nombre LIKE '"+es+"%'"; si me corre. el caso es que tengo que interactuar con el teclado una especie de busqueda predictiva es por eso que tiene como parametro un String es....!! si alguien entiende el caso o le ha pasdoo.... ayudenmeee .. se lo agradeceré eternamente
|
|
|
En línea
|
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
No se pueden revivir mensajes viejos, si necesitas ayuda escribe un mensaje nuevo.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Como realizar una grafica x-y en JAVA
Java
|
alex09000
|
4
|
17,480
|
31 Diciembre 2006, 23:53 pm
por FAKEz
|
|
|
¿Cómo realizar un framework para Java?
Java
|
Tlecoatl
|
4
|
7,836
|
29 Enero 2011, 13:10 pm
por kasiko
|
|
|
como calcular el costo e importe de un producto en java y mysql?
Java
|
hack-4-life
|
1
|
6,632
|
16 Mayo 2011, 19:38 pm
por NetJava
|
|
|
como controlar campo autoincrement en mysql y java?
Java
|
hack-4-life
|
2
|
11,297
|
12 Mayo 2011, 02:53 am
por hack-4-life
|
|
|
crear un buscador web con java netbeans y mySql
Java
|
alilo@
|
1
|
4,422
|
26 Abril 2013, 22:51 pm
por engel lex
|
|