Crear una aplicacion que desde xml que pinte datos desde mysql
Hola.
Buenas Tardes.
Necesito hacer una aplicacion que pinte datos desde la base de datos desde un xml:
Estoy utilizando eclipse.
He estado investivando y para la manipulacion de datos en xml he visto que se puede utilizar dom o jdom.
Que otros plugs necesito para que salga mi proyecto o mas bien que necesito para que salga mi aplicación.
Saludos.
- Inicie sesión o regístrese para enviar comentarios
?
No entendí, por favor expláyate explicando, si puedes usar un ejemplo, mejor.
Ok. Necesito hacer una
Ok.
Necesito hacer una aplicacion en donde me muestren mediante un xml resultados desde la base de datos.
Yo voy a mendar un query y query quiero que se me muestre en un xml con dom o Jdom o cualquier en este caso pues no tengo mucho cono conocimiento.
Tengo algo hecho no se si este bien o que pex.
No se si necesito correrlo en un tomcat o cualquier otro:
Aqui esta un poco de lo que llevo:
<
package com.mx.planetmedia.santander;
import java.io.*;
import java.util.*;
import java.sql.*;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.output.Format;
import org.jdom2.output.XMLOutputter;
public class Cliente {
//archivo destino
private String file="C:/cliente.xml";
/* DATOS PARA LA CONEXION */
private String db = "mundial_santander";
private String user = "mundial";
private String password = "asdfscrx-";
private Connection conn = null;
public Cliente(){
conectar();
}
private void conectar()
{
String url = "jdbc:mysql://174.120.233.67:2082/"+this.db;
try{
//obtenemos el driver de para mysql
Class.forName("com.mysql.jdbc.Driver");
//obtenemos la conexión
conn = DriverManager.getConnection(url, this.user , this.password );
if (conn!=null){
System.out.println("OK base de datos "+this.db+" listo");
}
}catch(SQLException e){
System.out.println(e);
}catch(ClassNotFoundException e){
System.out.println(e);
}
}
public void getXML()
{
Document doc = new Document();
//etiqueta principal
Element root = new Element("DataBase");
doc.setRootElement(root);
try {
//consulta
String q = "SELECT * FROM cliente";
Statement stmt = conn.createStatement();
ResultSet resultset = stmt.executeQuery(q);
ResultSetMetaData resultmetadata = resultset.getMetaData();
//obtiene la cantidad de columnas de la tabla
int numCols = resultmetadata.getColumnCount();
while (resultset.next()) {
List elmts = new ArrayList();
for (int i=1; i <= numCols; i++) {
//obtiene nombre de columna
String colName = resultmetadata.getColumnName(i);
//Obtiene el contendio de la celda
String colVal = resultset.getString(i);
//forma los elementos para el XML
Element elmt = new Element(colName);
elmt.setText(colVal);
elmts.add(elmt);
}
//para la etiqueta
Element row = new Element("registro");
//añade el registro en xml
row.setContent(elmts);
root.addContent(row);
}
//cierra database
resultset.close();
stmt.close();
conn.close();
// Graba el archiv XML en disco
XMLOutputter outputter = new XMLOutputter( Format.getPrettyFormat() );
try {
outputter.output(doc, new FileOutputStream ( file ));
System.out.println("Arhivo XML creado en " + file);
}
catch (IOException e) {
System.out.println(e);
}
} catch (SQLException e) {
System.err.println(e);
}
}
}
>
<
<?xml version="1.0" encoding="UTF-8"?>
1
juan
1
juan perez
df
1
1
+525537257249
1
hector@aguitech.com
23
0000-00-00
cuauhtemoc
0
02231
0
0
1
47d28516f5f61f51de7341a28b8973000053cf5efae34c4fc4
0
0
2013-04-04
2
Andrea González Ruíz
1
Andrea González Ruíz
norte
2
0
1
karis@hotmail.com
25
0000-00-00
Aguascalientes
0
87469
0
0
0
0
0
2013-03-12
3
Saúl Hernandez Granados
2
Saúl Hernandez Granados
sur
1
0
1
ing.karyna@gmail.com
35
0000-00-00
Tepezalá
0
08739
0
0
0
0
0
2013-03-30
4
Sandra Maria Luz Andrade
3
Sandra Maria Luz Andrade
poniente
2
0
0
karis@hotmail.com
50
0000-00-00
Rincón de Romos
0
02749
0
0
0
0
0
2013-03-10
5
Javier Mauricio Montaner Dávila
4
Javier Mauricio Montaner Dávila
sur
1
0
0
33
0000-00-00
Tijuana
0
02947
0
0
0
0
0
2013-03-12
6
Carlos Loaiza
2
carlos
zona
1
0
1
carlosloaiza21@hotmail.com
27
0000-00-00
0
0
0
0
0
0
0000-00-00
7
Carlos Loaiza
4
carlos
zona
1
0
1
carlosloaiza21@hotmail.com
27
0000-00-00
0
0
0
0
0
0
2013-03-11
>
mmm tu quieres un parser
lo que ti quieres es un parser que convierta tu resultado de la consulta en un XML, pues puedes hacerlo de la forma mas antigua que es generando el xml a mano tu mismo con tus clases o puedes usar un api a las apis generalmente se les pasa el objeto y ellas te regresan el xml construido
no tengo idea de como hacerlo.
Ok.
pero no se como utilizar el xml o mas bien no se que estructura seguir.
no he manejado xml.
y no se si como lo estoy haciendo lo estoy haciendo bien o mal.
saludos
mmmm
La pregunta es que estructura en el XML necesitas por ejemplo pondrias decirle
<nombre>
</nombre>
</USUARIO>
tu le tendrías que pasar el objeto USUARO con las propiedades NOMBRE, ETC..
me explico?
la pregunta es a fuerzas necesitas XML? no te sirve usar JSON? si lo vas a pasar a la vista por web es mas rápido JSON
mmmm
No necesariamente pero no se JSON ni Ajax y pues realmente aun me falta mucho conocimiento y pues no se que hacer.
Saludos.
entonces la pregunta es
Que quieres hacer?, que problemas vas a solucionar, es trabajo o por puero ocio? que lo dudo. en base a eso que quieres hacer? si usas JSON gogle tiene un api para eso se llama gson. y esta muy padre para convertir objetos a JSON pero te digo comenta que quieres hacer y que pretendes y ya vemos que te podemos aconsejar
de Resultset a Xml
Iba a escribirte un ejemplo, pero me encontré éste link y se me quitaron las ganas.