Leer el XML hibernate.cfg.xml

que librería me recomiendan ara leer el archivo de configuracion del hibernta.cfg.xml?

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de Sr. Negativo

Leer XML

Imagen de neko069

documentación

El archivo que mencionas es propio del framework de Hibernate, sería mejor que consultaras la documentación para que cheques el lugar por defecto de ése archivo para que las bibliotecas del framework lo ubiquen, o bien checar cómo personalizar la ruta del archivo.

Imagen de Sr. Negativo

Lector XML

Si lo que quieres es leer el contenido de un XML hay uno en Java Zone hecho por @roger1345

buscar texto dentro de tag xml con atributo name

Estoy usando esta clase
org.w3c.dom.Node
que metodo necesito para decirle devuelve lo que esta dentro de ip

               

        <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="connection.url">jdbc:mysql://192.168.1.254:3306/transacciones</property>
        <property name="connection.username">root</property>
        <property name="connection.password">*********</property>  

hice este metodo pero solo me devuelve lo que tiene el primer tag property y necesito decirle  que me devuelva lo del name que yo desee
  private static String getTagValue(String sTag, Element eElement) {
        NodeList nlList = eElement.getElementsByTagName(sTag).item(0).getChildNodes();
        Node nValue = (Node) nlList.item(0);
 
        return nValue.getNodeValue();
  }

<code>

A ver si alguien me da un cable

Imagen de ezamudio

es una lata

Pues vas bien pero es que es una lata navegar XML con el DOM. Te devuelve el primer tag porque le pides item(0); lo que debes hacer hacer es recorrer esa NodeList, en cada Node que tenga, revisar su atributo "name" y el que tenga como valor "connection.url" ese es el que buscas, devuelves su nodeValue y listo.

xpath

Para navegar entre el arbol de una estructura xml puedes usar una cháchara llamada xpath. te facilita la tarea de recorrerte entre los nodos (ramas)
 

quedo listo

       
        public Conexion LeeXML() {
                org.w3c.dom.Document dom=null;
                javax.xml.parsers.DocumentBuilderFactory dbf;
                javax.xml.parsers.DocumentBuilder db;
                dbf = javax.xml.parsers.DocumentBuilderFactory.newInstance();
                try
                {
                  db = dbf.newDocumentBuilder();
                  dom = db.parse("src/hibernate.cfg.xml");
                }
                catch(Exception ex) {}
               
                org.w3c.dom.Element rootElement = dom.getDocumentElement();
                org.w3c.dom.NodeList nodeList = rootElement.getElementsByTagName("property");
                System.out.println(nodeList.getLength());
                Conexion c = new Conexion();
                if(nodeList != null && nodeList.getLength()>0)
                                {
                                  for(int i=0;i<nodeList.getLength();i++)
                                  {
                                    org.w3c.dom.Element element = (Element)nodeList.item(i);
       
                                    String attr = element.getAttribute("name");
                                    System.out.println(element.getAttribute("name"));
                                    if(attr.equals("connection.driver_class")){
                                        c.setDriver(element.getFirstChild().getNodeValue());
                                       
                                    }else if(attr.equals("connection.url")){
                                        c.setUrl(element.getFirstChild().getNodeValue());
                                    }else if(attr.equals("connection.username")){
                                        c.setUser(element.getFirstChild().getNodeValue());
                                    }else if(attr.equals("connection.password")){
                                        c.setPassword(element.getFirstChild().getNodeValue());
                                    }

                                  }
                                }
                return c;
  }

asi quedo funcionando solo falta retocarlo un poquitin pero ya funciona. Gracias