JAVA Flashcards
Colección de API utilizados en criptografía
BOUNCYCASTLE
Librerías para loggin
LOG4J
LOGBACK,
Librerías para PARSERS XML Y PROCESORS XSL
XERCES,
XALAN,
WOODSTOX
APACHE FOP
PRUEBAS UNITARIAS DE CARGA
JUINT+MOCKIT
JMETER
Librería de proposito general de Google
Guava, librería de propósito general compuesta por una serie de herramientas que proporcionan características convenientes y productivas tales como programación funcional, almacenamiento en caché, objetos de rango y hashing.
Librería cliente HTTP
APACHE HTTPCOMPONENTS
Peticiones http a bajo nivel. en java 11 ya existe un equivalente en java.net.http.httpclient
Manejo de información en formato json
GSON Y JACKSON
MANEJO DE DOCUMENTOS DE OFFICE
APACHE POI
Librería de Detección y extración de contenido de multitud de formatos
APACHE TIKA
ETL para extracción de inforamción, transformación y carga de ficheros.
PENTAHO KETTLE
LIBRERÍA PDF
ITEXT
LIBRERÍA PDF
PDFBOX
3 IDES ENTORNOS Y EDITORES DE DESARROLLO JAVA
ECLIPSE | INTELLIJ | NETBEANS
AUTOMATIZACIÓN DE DESARROLLO
ANT(BILD.XML)
IVY(EXTENSIÓN DE ANT PARA GESTIONAR DEPENDENCIAS)
MAVEN(POM.XML)
GRADLE(BUILD.GRADLE EN GROOVY O R KOTLIN DSL)
JENKINS(INTEGRACIÓN CONTÍNUA)
API SOAP
JAX-WS
API REST
JAX-RS
API PERSISTENCIA
JPA API
API MENSAJERÍA
JMS API
API DE TRANSACCIONES
JTA API
API DE DIRECTORIO
JNDI API
API PAR PARSING XML
JAXP API
JDK’S DE JAVA
OPEN JDK
AMAZON CORRETTO
IBM JDK
¿QUÉ ES JAXP?
(Java API for XML Processing) es el API “estándar” par la manipulación del formato XML. Esta API pone a disposición del programador tres conjuntos de funcionalidades: la modelización, el parsing y la transformación. Se compone de cuatro paquetes principales:
DENTRO DE JAXP ESTÁ javax.xml.parsers. ¿Que apis contiene?
SAX API JAXP – Events
DOM API JAXP – Tree
DENTRO DE JAXP ESTÁ org.w3c.dom. ¿Que apis contiene?
este paquete contiene el conjunto de clases y interfaces necesarias para trabajar con DOM (modelización)
DENTRO DE JAXP ESTÁ org.xml.sax: ¿Que apis contiene?
este paquete contiene el conjunto de clases y interfaces necesarias para trabajar con XSLT (transformación)
XSLT API JAXP – Transformacion XML
PARA QUE SIRVE EL API JAXB API JAXP –
Negocio
PARA QUE SIRVE EL API XSLFO API JAXP
Transformacion PDF
¿Qué es el BITCODE?
El código fuente que contiene el archivo .class generado por el compilador JAVAC se llama BITECODE (código máquina de una CPU Software)
COMO SE LLAMA EL COMPONENTE DEL JDK QUE EJECUTA/INTERPRETA
JAVA(ES UN PROGRAMA QUE ENTIENDE BITECODE Y EJECUTA)
¿Cuándo se crea un fichero MANIFEST.MF? ¿Qué tiene dentro?
Cuando empaquetamos con el comando jar se nos crea un directorio llamado META-INF y dentro se crea un fichero MANIFEST.MF fichero de metadatos.
Este fichero tendrá dentro unos metadatos importantes que podemos establecer dependiendo de nuestras necesidades.
La estructura de este MANIFEST.MF es siempre:
Campo: valor
Un ejemplo:
This creates the JAR file with a manifest with the following contents:
Manifest-Version: 1.0
Class-Path: MyUtils.jar
Created-By: 1.7.0_06 (Oracle Corporation)
¿Qué es JPA?
JPA es la propuesta estándar que ofrece Java para implementar un Framework Object Relational Mapping (ORM), que permite interactuar con la base de datos por medio de objetos, de esta forma, JPA es el encargado de convertir los objetos Java en instrucciones para el Manejador de Base de Datos (MDB).
¿Qué es REPL?
Una consola es un programa que se ejecuta en la shell del sistema (modo texto) y que tiene un prompt en el cual escribimos comandos que se encarga de ejecutar.
En este caso concreto, jShell, se trata de una consola que sigue el sistema REPL: Read-Eval-Print-Loop
SIRVE PARA MUCHOS LENGUAJES
¿Cómo se puede configurar la variable Classpath?
Variable de entorno
Establecerla en el momento de lanzar la app Ej. java -classpath /…/…/lib.jar).
En el fichero MANIFEST.MF Existe un “campo” llamado Class-Path:ruta(s).
¿Qué es un Classloader?
se encarga de cargar las clases en memoria. Se ayuda del Classpath para encontrar donde están esas clases que debe cargar. Para que esto funcione de forma correcta debemos tener configurado ese ClASSPATH de forma correcta. Podemos hacerlo de tres formas.
¿Qué es HEAP?
Memoria dinámica donde se guardan los objetos Java creados de forma dinámica con el operador New().
¿Que JDK de terceros conoces?
OPEN JDK
AMAZON CORRETTO
IBM JDK
¿cómo sacar el Id del Thread por pantalla?
Thread.currentthread().getId();
¿cómo sacar el nombre del Thread por pantalla?
Thread.currentthread().getName();
¿cómo crear dos nuevos hilos?
¿Cuál es la evolución de la ejecución en la JVM?
1 - Las clases base y las enlazadas con el classpath se cargan en memoria a través del ClassLoader pasamos a la segunda fase
2 . Por una parte, tenemos registros como una CPU virtual, tiene también un Stack, que es el apartado donde van a almacenar información los diferentes hilos de ejecución.
3 - Tenemos Heap, memoria dinámica donde se guardan los objetos Java creados de forma dinámica con el operador New().
4. Grabage collector – Los objetos pueden crearse con New(), pero no pueden eliminarse, se marcan como basura y se van recolectando por este componente que lo que esté marcado como basura se lo lleva.
5 . JIT (just in time compiler): es una forma de ejecutar Código, que implica compilación durante la ejecución de un programa. Se hacen las cosas sobre la marcha. Jit genera código atendiendo a las necesidades de esa plataforma. Transforma Bitecode en Código máquina en vivo
¿Qué es la JVM ESPECIFICATION?
Oracle creo una especificación(JAVA VIRTUAL MACHINE ESPECIFICATION) para que cualquier pudiese crearse una JDK. Algunas de las más famosas: OPEN JDK
AMAZON CORRETTO IBM JDK
¿Qué es JIT?
Es una forma de ejecutar Código, que implica compilación durante la ejecución de un programa. Se hacen las cosas sobre la marcha. Jit genera código atendiendo a las necesidades de esa plataforma. Transforma Bytecode en Código máquina en vivo.
¿Qué es el GRABAGE COLLECTOR?
Los objetos pueden crearse con New(), pero no pueden eliminarse, se marcan como basura y se van recolectando por este componente que lo que esté marcado como basura se lo lleva.
¿Cómo se llama el hilo que se ejecuta en el el método main?
Main
¿Para qué sirve el método main?
Main es un método estándar que le sirve a la JRE para saber por donde empezar. Punto de entrada de la aplicación
¿Para que sirve el método run?
El planificador llama al método run par ejecutar un hilo. Esté método está definido en la Clase Thread.
¿Por qué está compuesta una clase?
- Atributos de datos: guardan información. Puede haber clases sin atributos.
- Métodos: son las funciones para implementar la lógica
- Atributos de relación.
Entre las claes se puden dar relaciones de:
- Herencia entre clases –> Extends.
- Herencia entre clases e interface –> Implements