| @ -0,0 +1,10 @@ | |||||
| <?xml version="1.0" encoding="UTF-8"?> | |||||
| <classpath> | |||||
| <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-17"> | |||||
| <attributes> | |||||
| <attribute name="module" value="true"/> | |||||
| </attributes> | |||||
| </classpathentry> | |||||
| <classpathentry kind="src" path="src"/> | |||||
| <classpathentry kind="output" path="bin"/> | |||||
| </classpath> | |||||
| @ -0,0 +1,17 @@ | |||||
| <?xml version="1.0" encoding="UTF-8"?> | |||||
| <projectDescription> | |||||
| <name>P10-FicherosXML-DOM</name> | |||||
| <comment></comment> | |||||
| <projects> | |||||
| </projects> | |||||
| <buildSpec> | |||||
| <buildCommand> | |||||
| <name>org.eclipse.jdt.core.javabuilder</name> | |||||
| <arguments> | |||||
| </arguments> | |||||
| </buildCommand> | |||||
| </buildSpec> | |||||
| <natures> | |||||
| <nature>org.eclipse.jdt.core.javanature</nature> | |||||
| </natures> | |||||
| </projectDescription> | |||||
| @ -0,0 +1,2 @@ | |||||
| eclipse.preferences.version=1 | |||||
| encoding/<project>=UTF-8 | |||||
| @ -0,0 +1,14 @@ | |||||
| eclipse.preferences.version=1 | |||||
| org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled | |||||
| org.eclipse.jdt.core.compiler.codegen.targetPlatform=17 | |||||
| org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve | |||||
| org.eclipse.jdt.core.compiler.compliance=17 | |||||
| org.eclipse.jdt.core.compiler.debug.lineNumber=generate | |||||
| org.eclipse.jdt.core.compiler.debug.localVariable=generate | |||||
| org.eclipse.jdt.core.compiler.debug.sourceFile=generate | |||||
| org.eclipse.jdt.core.compiler.problem.assertIdentifier=error | |||||
| org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled | |||||
| org.eclipse.jdt.core.compiler.problem.enumIdentifier=error | |||||
| org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning | |||||
| org.eclipse.jdt.core.compiler.release=enabled | |||||
| org.eclipse.jdt.core.compiler.source=17 | |||||
| @ -0,0 +1,26 @@ | |||||
| # LEE UN ARCHIVO XML EL CUAL CONTIENE UN ARRAY DE EMPLEADOS, LOS MOSTRARÁ POR PANTALLA | |||||
| Se trabaja con la ayuda de DOM para así poder obtener la lista de los empleados que se encuentran el archivo XML. | |||||
| Con la ayuda de "NodeList" podremos obtener los empleados, y con "Node" podremos verlos uno por uno junto con sus datos. | |||||
| RESULTADO: | |||||
| ``` | |||||
| Número de empleados: 3 | |||||
| ID del empleado: 1 | |||||
| Apellido: Martinez | |||||
| Departamento: 10 | |||||
| Salario: 1000.33 | |||||
| ID del empleado: 2 | |||||
| Apellido: Garcia | |||||
| Departamento: 11 | |||||
| Salario: 2000.34 | |||||
| ID del empleado: 3 | |||||
| Apellido: Navarro | |||||
| Departamento: 10 | |||||
| Salario: 2222.33 | |||||
| ``` | |||||
| @ -0,0 +1,54 @@ | |||||
| package xmladom.com.daniminguet.es; | |||||
| import java.io.File; | |||||
| import java.sql.Connection; | |||||
| import java.sql.DriverManager; | |||||
| import java.sql.ResultSet; | |||||
| import java.sql.SQLException; | |||||
| import java.sql.Statement; | |||||
| import java.util.ArrayList; | |||||
| import org.w3c.dom.DOMImplementation; | |||||
| import org.w3c.dom.Document; | |||||
| import org.w3c.dom.Element; | |||||
| import org.w3c.dom.Node; | |||||
| import javax.xml.parsers.DocumentBuilder; | |||||
| import javax.xml.parsers.DocumentBuilderFactory; | |||||
| import org.w3c.dom.NodeList; | |||||
| public class P10DOM { | |||||
| public static void main(String[] args) { | |||||
| //Fichero XML donde están guardados los empleados | |||||
| File fichero = new File("C:\\Users\\Dani\\OneDrive\\Documentos\\AccesoADatos\\empleados.xml"); | |||||
| try { | |||||
| DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance(); | |||||
| DocumentBuilder dBuilder = dbFactory.newDocumentBuilder(); | |||||
| Document doc = dBuilder.parse(fichero); | |||||
| doc.getDocumentElement().normalize(); | |||||
| //Recoge los elementos del archivo que sean "empleado" | |||||
| NodeList nList = doc.getElementsByTagName("empleado"); | |||||
| //Muestra la cantidad de empleados que hay en el archivo | |||||
| System.out.println("Número de empleados: " + nList.getLength()); | |||||
| //Muestra todos los datos de cada empleado del archivo | |||||
| for(int temp = 0; temp < nList.getLength(); temp++) { | |||||
| Node node = nList.item(temp); | |||||
| if(node.getNodeType() == Node.ELEMENT_NODE) { | |||||
| Element element = (Element) node; | |||||
| System.out.println("\nID del empleado: " + element.getAttribute("id")); | |||||
| System.out.println("Apellido: " + element.getElementsByTagName("apellido").item(0).getTextContent()); | |||||
| System.out.println("Departamento: " + element.getElementsByTagName("dep").item(0).getTextContent()); | |||||
| System.out.println("Salario: " + element.getElementsByTagName("salario").item(0).getTextContent()); | |||||
| } | |||||
| } | |||||
| } catch(Exception e) { | |||||
| e.printStackTrace(); | |||||
| } | |||||
| } | |||||
| } | |||||