Browse Source

Anyado el proyecto creado con las clases creadas.

master
michaelpaliz 2 years ago
commit
9b41cc80e4
15 changed files with 211 additions and 0 deletions
  1. +10
    -0
      .classpath
  2. +8
    -0
      .idea/.gitignore
  3. +6
    -0
      .idea/misc.xml
  4. +8
    -0
      .idea/modules.xml
  5. +17
    -0
      .project
  6. +11
    -0
      Ejercicio_10.iml
  7. +11
    -0
      README.md
  8. BIN
      out/production/Ejercicio_10/Main.class
  9. BIN
      out/production/Ejercicio_10/Modelo/Empleado.class
  10. BIN
      out/production/Ejercicio_10/Parser.class
  11. +18
    -0
      out/production/Ejercicio_10/empleado.xml
  12. +24
    -0
      src/Main.java
  13. +25
    -0
      src/Modelo/Empleado.java
  14. +55
    -0
      src/Parser.java
  15. +18
    -0
      src/empleado.xml

+ 10
- 0
.classpath View File

@ -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/jre">
<attributes>
<attribute name="module" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="src" path="src"/>
<classpathentry kind="output" path="out/production/Ejercicio_10"/>
</classpath>

+ 8
- 0
.idea/.gitignore View File

@ -0,0 +1,8 @@
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

+ 6
- 0
.idea/misc.xml View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_18" default="true" project-jdk-name="corretto-18" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

+ 8
- 0
.idea/modules.xml View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/Ejercicio_10.iml" filepath="$PROJECT_DIR$/Ejercicio_10.iml" />
</modules>
</component>
</project>

+ 17
- 0
.project View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>Ejercicio_10</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>

+ 11
- 0
Ejercicio_10.iml View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

+ 11
- 0
README.md View File

@ -0,0 +1,11 @@
<h2>Parsear el xml a nuestro objeto persona e imprimirlo por pantalla</h2>
<p>Utilizamos 2 clases para el ejercicio una clase para pasearlo utilizando la direccion del fichero que nos provee desde el main</p>
<p>Terminamos el ejercicio comprobando que el parseo se ha completado correctamente</p>
```java
[Empleado{identificador=1, apellido='Martinez', departamento='10', salario=1000.33}
, Empleado{identificador=2, apellido='Garcia', departamento='11', salario=2000.34}
, Empleado{identificador=3, apellido='Navarro', departamento='10', salario=2222.33}
]
```

BIN
out/production/Ejercicio_10/Main.class View File


BIN
out/production/Ejercicio_10/Modelo/Empleado.class View File


BIN
out/production/Ejercicio_10/Parser.class View File


+ 18
- 0
out/production/Ejercicio_10/empleado.xml View File

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<empleados>
<empleado id="1">
<apellido>Martinez</apellido>
<dep>10</dep>
<salario>1000.33</salario>
</empleado>
<empleado id="2">
<apellido>Garcia</apellido>
<dep>11</dep>
<salario>2000.34</salario>
</empleado>
<empleado id="3">
<apellido>Navarro</apellido>
<dep>10</dep>
<salario>2222.33</salario>
</empleado>
</empleados>

+ 24
- 0
src/Main.java View File

@ -0,0 +1,24 @@
import Modelo.Empleado;
import java.io.File;
import java.io.IOException;
import java.util.List;
public class Main {
public static void main(String[] args) {
try{
File fichero = new File("/home/michael/Documents/SpringProjects/Ejercicio_10/src/empleado.xml");
Parser parser = new Parser(new File(fichero.toURI()));
parser.startParser();
if (parser.startParser()){
List<Empleado> empleados = parser.getEmpleado();
System.out.println(empleados);
}
}catch (IOException e){
e.printStackTrace();
}
}
}

+ 25
- 0
src/Modelo/Empleado.java View File

@ -0,0 +1,25 @@
package Modelo;
public class Empleado {
private final int identificador;
private final String apellido;
private final String departamento;
private final float salario;
public Empleado(int identificador, String nombre, String departamento, float salario) {
this.identificador = identificador;
this.apellido = nombre;
this.departamento = departamento;
this.salario = salario;
}
@Override
public String toString() {
return "Empleado{" +
"identificador=" + identificador +
", apellido='" + apellido + '\'' +
", departamento='" + departamento + '\'' +
", salario=" + salario +
'}' + "\n";
}
}

+ 55
- 0
src/Parser.java View File

@ -0,0 +1,55 @@
import Modelo.Empleado;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
public class Parser {
private List<Empleado> empleados;
private final File empleadoFichero;
public Parser(File file) throws IOException {
empleadoFichero = file;
}
public boolean startParser(){
boolean parseado = false;
try{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document documento = builder.parse(empleadoFichero);
documento.getDocumentElement().normalize();
Element root = documento.getDocumentElement();
NodeList nList = root.getElementsByTagName("empleado");
empleados = new ArrayList<>();
for (int i = 0; i < nList.getLength(); i++) {
Node node = nList.item(i);
if (node.getNodeType() != Node.ELEMENT_NODE){
throw new RuntimeException();
}
Element element = (Element) node;
int id = Integer.parseInt(element.getAttribute("id"));
String apellido = element.getElementsByTagName("apellido").item(0).getTextContent();
String departamento = element.getElementsByTagName("dep").item(0).getTextContent();
float salario = Float.parseFloat(element.getElementsByTagName("salario").item(0).getTextContent());
empleados.add( new Empleado (id,apellido,departamento,salario));
}
parseado = true;
}catch (Exception e){
e.printStackTrace();
}
return parseado;
}
public List<Empleado> getEmpleado() {
return empleados;
}
}

+ 18
- 0
src/empleado.xml View File

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<empleados>
<empleado id="1">
<apellido>Martinez</apellido>
<dep>10</dep>
<salario>1000.33</salario>
</empleado>
<empleado id="2">
<apellido>Garcia</apellido>
<dep>11</dep>
<salario>2000.34</salario>
</empleado>
<empleado id="3">
<apellido>Navarro</apellido>
<dep>10</dep>
<salario>2222.33</salario>
</empleado>
</empleados>

Loading…
Cancel
Save