BLOQUE 3 Flashcards
Dada la siguientente tabla, que devolvera la consulta SELECT COUNT(precios) FROM PRODUCTOS ?
Productos - Precios
1 - 10 euros
2 - 25 euros
3 -
4 - 7 euros
5 - null
6 - 50 euros.
5
OJO que el null NO lo recupera
el blanco si es un valor valido, pero el null no
En java que resultado da esto? 6^3
5
Ese símbolo en java es para indicar que es un xor.
6 en binario es 110
3 en binario es 011
Hacemos un XOR bit a bit (devuelve 1 si tenemos 1 impares, si no devolvera 0
Obtenemos por tanto 101, que en binario es 5
En java que resultado da esto? 6^3
5
Ese símbolo en java es para indicar que es un xor.
6 en binario es 110
3 en binario es 011
Hacemos un XOR bit a bit (devuelve 1 si tenemos 1 impares, si no devolvera 0
Obtenemos por tanto 101, que en binario es 5
Cómo es la notación de NOR en java ?
~(a | b)
ACID
- Atomicidad
- Consistencia
- Isolation (aislamiento)
- Durabilidad
Se le puede hacer un rollback a un truncate ?
NO
ojo con esto, porque no se puede. La utilidad de truncate es que no guarda registro de cada registro de la tabla que ha ido borrando, por eso es mucho mas rapido y eficiente, pero como contrapartida no tiene rollback
Que es DDL y que instrucciones contiene ?
DDL significa Lenguaje de Definición de Datos
CREATE, ALTER, DROP
TRUNCATE tambien se considera DDL
Que es DCL y que instrucciones contiene ?
DCL significa Lenguaje de Control de Datos (Data Control Language, por sus siglas en inglés).
GRANT, REVOKE
Que es DML y que instrucciones contiene ?
DML significa Lenguaje de Manipulación de Datos (Data Manipulation Language, por sus siglas en inglés).
SELECT
INSERT
DELETE
UPDATE
TRUNCATE es:
a) DDL
b) DCL
c) DML
d) TCL
DDL (Lenguaje de Definición de Datos)
Aunque pueda parecer que un truncate es un delete ‘gordo’, porque borra todos los registros y que por tanto es DML (manipulacion de datos), en realidad está considerado DDL
Que es TCL y que instrucciones contiene ?
Transaction Control Language (TCL):
ROLLBACK
COMMIT
SAVEPOINT
Para que son los paquetes java.awt y javax.swing y javafx ?
Clases para generar interfaces gráficas (Aplicaciones de escritorio)
Nombra algunas clases que tenga el paquete java.lang
El paquete java.lang es fundamental en Java y contiene clases esenciales para el diseño del lenguaje. Aquí hay algunas de las clases más importantes que incluye:
Object: La clase raíz de la jerarquía de clases de Java. Todas las clases en Java heredan de Object.
String: Representa cadenas de caracteres.
Math: Proporciona métodos para realizar operaciones matemáticas como trigonometría, logaritmos, etc.
System: Contiene métodos y atributos útiles para el acceso al sistema, como la entrada y salida estándar.
Thread: Soporta la programación concurrente.
Este paquete se importa automáticamente en todos los programas Java, por lo que no necesitas importarlo explícitamente
Que tienen los paquetes java.io y java.nio.file ?
java.io
El paquete java.io proporciona clases para el manejo de entrada y salida (I/O) en Java. Algunas de las clases más importantes incluyen:
File: Representa un archivo o directorio en el sistema de archivos.
InputStream y OutputStream: Clases base para leer y escribir bytes.
Reader y Writer: Clases base para leer y escribir caracteres.
BufferedReader y BufferedWriter: Clases para leer y escribir texto de manera eficiente.
java.nio.file
El paquete java.nio.file es parte del paquete java.nio (New I/O) y proporciona una API más moderna y flexible para trabajar con archivos y sistemas de archivos. Algunas de las clases más importantes incluyen:
Path: Representa una ruta en el sistema de archivos.
Files: Contiene métodos estáticos para realizar operaciones en archivos y directorios, como copiar, mover, eliminar, etc.
FileSystems: Proporciona métodos para obtener instancias de FileSystem.
FileVisitor: Una interfaz para recorrer un árbol de archivos.
Ambos paquetes son esenciales para trabajar con archivos y flujos de datos en Java, pero java.nio.file ofrece una API más moderna y con mejor rendimiento en comparación con java.io
Que tienen los paquetes java.sql y javax.sql (API JDBC) ?
java.sql
El paquete java.sql proporciona las clases e interfaces necesarias para acceder y gestionar bases de datos relacionales mediante la API JDBC (Java Database Connectivity). Algunas de las clases e interfaces más importantes incluyen:
Connection: Representa una conexión a una base de datos.
Statement: Se utiliza para ejecutar consultas SQL estáticas y devolver los resultados.
PreparedStatement: Una subclase de Statement que permite ejecutar consultas SQL precompiladas con parámetros.
ResultSet: Representa el conjunto de resultados de una consulta SQL.
DriverManager: Gestiona un conjunto de controladores de bases de datos.
javax.sql
El paquete javax.sql amplía la funcionalidad de java.sql y proporciona clases e interfaces adicionales para el manejo de bases de datos, especialmente en entornos empresariales. Algunas de las clases e interfaces más importantes incluyen:
DataSource: Proporciona una forma más flexible y eficiente de gestionar conexiones a bases de datos en comparación con DriverManager.
ConnectionPoolDataSource: Una subinterfaz de DataSource que proporciona conexiones desde un pool de conexiones.
PooledConnection: Representa una conexión que puede ser reutilizada desde un pool de conexiones.
RowSet: Una interfaz que extiende ResultSet y proporciona una forma más flexible de manejar conjuntos de resultados.
Ambos paquetes son fundamentales para trabajar con bases de datos en Java, pero javax.sql ofrece funcionalidades adicionales y mejoras para aplicaciones empresariales
que tiene el paquete java.util ?
El paquete java.util es uno de los más versátiles y utilizados en Java, ya que contiene una amplia variedad de clases e interfaces útiles para la programación diaria. Aquí tienes algunas de las más importantes:
ArrayList: Una implementación de la interfaz List que permite el almacenamiento dinámico de elementos.
HashMap: Una implementación de la interfaz Map que permite almacenar pares clave-valor.
Date y Calendar: Clases para trabajar con fechas y horas.
Collections: Una clase de utilidades que proporciona métodos estáticos para operar en colecciones, como ordenar y buscar.
Random: Una clase para generar números aleatorios.
Scanner: Una clase para leer entrada de texto desde varias fuentes, como la entrada estándar (teclado) o archivos.
Este paquete es esencial para manejar colecciones de datos, fechas, y otras utilidades comunes en la programación.
Que tiene el paquete java.net ?
El paquete java.net proporciona clases e interfaces para la programación de redes en Java. Aquí tienes algunas de las clases más importantes:
URL: Representa una URL (Uniform Resource Locator) y permite acceder a los recursos a los que apunta.
URLConnection: Representa una conexión a un recurso especificado por una URL.
HttpURLConnection: Una subclase de URLConnection que proporciona soporte específico para el protocolo HTTP.
Socket: Permite la comunicación a través de una red utilizando el protocolo TCP.
ServerSocket: Permite a un servidor escuchar y aceptar conexiones de clientes a través de una red utilizando el protocolo TCP.
DatagramSocket: Permite la comunicación a través de una red utilizando el protocolo UDP.
InetAddress: Representa una dirección IP.
Este paquete es esencial para desarrollar aplicaciones que requieren comunicación en red, como clientes y servidores web, aplicaciones de chat, y más
Con qeu comando de windows podemos saber la version del compilador de java instalado ?
javac -version
Que es una entidad fuerte ?
En el contexto de bases de datos, una entidad fuerte es una entidad que puede ser identificada de manera única por sus propios atributos sin depender de ninguna otra entidad. Esto significa que tiene su propia clave primaria que la distingue de otras entidades.
Por ejemplo, en una base de datos de una universidad, una entidad fuerte podría ser “Estudiante”, ya que cada estudiante puede ser identificado de manera única por su número de matrícula.
Que es una entidad debil ?
Una entidad débil en bases de datos es una entidad que no puede ser identificada de manera única solo por sus propios atributos. En lugar de eso, depende de una entidad fuerte para su identificación. Esto significa que una entidad débil necesita una clave externa (foreign key) junto con sus propios atributos para formar una clave primaria.
Por ejemplo, en una base de datos de una universidad, una entidad débil podría ser “Curso”, ya que un curso específico podría necesitar ser identificado no solo por su propio código, sino también por el departamento al que pertenece.
Como pasa la clave en una entidad 1:N ?
Se pasa la clave de la entidad 1 a la N como clave foranea (FK)
Es posible tener una relacion 1:1 ?
Si es posible, pero lo suyo es integrar las dos entidades en una sola entidad eliminando la relacion
En Java, una interfaz puede tener atributos ?
NO
Si tengo un metodo abstracto, como tiene que ser la clase ?
Abstracta, SI O SI.
Si tenemos un metodo de tipo abstracto, la clase no puede no serlo.
Donde se almacena una variable de tipo static ?
En la memoria heap.
En Java, una variable de tipo static pertenece a la clase en lugar de a una instancia específica de la clase. Esto significa que cualquier método dentro de la clase puede modificar una variable static, ya sea un método estático o un método de instancia.
Además, cualquier otra clase que tenga acceso a la variable static (dependiendo de su modificador de acceso) también puede modificarla. Por ejemplo, si la variable static es pública, cualquier clase puede modificarla directamente usando el nombre de la clase.
Aquí tienes un ejemplo sencillo:
Java
public class MiClase {
public static int contador = 0;
public void incrementar() { contador++; } public static void resetear() { contador = 0; } }
public class OtraClase {
public void modificarContador() {
MiClase.contador = 10;
}
}
En este ejemplo, tanto el método incrementar como el método resetear en MiClase, así como el método modificarContador en OtraClase, pueden modificar la variable static contador
En Java, que tiene la libreria JBDC ?
La librería JDBC (Java Database Connectivity) es una API de Java que proporciona un conjunto de clases e interfaces para interactuar con bases de datos relacionales. Aquí tienes un resumen de lo que incluye:
Conexión a la base de datos: Permite establecer una conexión con una base de datos utilizando la clase DriverManager.
Envío de consultas SQL: Utiliza las interfaces Statement, PreparedStatement y CallableStatement para enviar consultas SQL a la base de datos.
Recuperación de resultados: Utiliza la interfaz ResultSet para recuperar y manipular los resultados de las consultas SQL.
Manejo de transacciones: Proporciona métodos para manejar transacciones, como commit y rollback.
Manejo de excepciones: Utiliza la clase SQLException para manejar errores y excepciones que ocurren durante la interacción con la base de datos.
JDBC es la forma más básica y estándar de acceder a los datos en Java
Que es jenkins ?
Jenkins es un servidor de integración continua de código abierto que facilita la automatización de tareas en los procesos de desarrollo de software. Está escrito en Java y permite a los desarrolladores automatizar la construcción, prueba y despliegue de sus aplicaciones, lo que mejora la eficiencia y la calidad del software.
Jenkins es muy popular en la comunidad de desarrollo debido a su capacidad para integrarse con una amplia variedad de herramientas y sistemas, y su flexibilidad para adaptarse a diferentes flujos de trabajo
Que es GitHub ?
plataforma de alojamiento de repositorios de software que utiliza el sistema de control de versiones Git
Que es SourceForge ?
Es una plataforma que proporciona herramientas para el desarrollo y distribucion de software libre y de codigo abierto
Una puerta lógica de tipo XOR con dos entradas devuelve un valor de 1:
a) Cuando sus dos entradas tienen valor 1.
b) Cuando alguna de sus entradas vale 1.
c) Cuando ninguna de sus entradas vale 1.
d) Cuando solo una de sus entradas vale 1.
D
Cuando solo una de sus entradas vale 1.
¿Qué es MongoDB?
a) Es una base de datos NoSQL de código abierto basada en documentos tipo JSON.
b) Es un almacén de estructuras de datos en memoria, usado como base de datos, caché
y bróker de mensajería.
c) Es una extensión de PostgreSQL para el tratamiento de información geográfica.
d) Es una base de datos relacional de código abierto, compatible con Oracle.
A
Es una base de datos NoSQL de código abierto basada en documentos tipo JSON.
Indique cuál de las siguientes afirmaciones es FALSA en relación con la instrucción switch:
a) Switch nos permite repetir la ejecución de una serie de instrucciones mientras que se cumpla la expresión condicional o aparezca una sentencia break.
b) Switch es equivalente a programar usando sentencias if anidadas.
c) La sentencia break asocial al último case (o default) no es necesaria.
d) La expresión asociada a la instrucción switch debe generar valores tipo char, byte,
short o int.
A
Switch nos permite repetir la ejecución de una serie de instrucciones mientras que se cumpla la expresión condicional o aparezca una sentencia break.
(no se repiten, no es ningún bucle)
La sentencia TRUNCATE del lenguaje SQL pertenece al:
a) DDL.
b) DCL.
c) DCU.
d) DML.
A
DDL
(recordar que truncate es ‘especial’ y es el unico rarito que está en un grupo que no encaja a la primera. Un DROP claramente está en DDL porque elimina el objeto, el truncate solo borra todas las filas de una tabla, es raro qeu esté aqui pero.. asi es :)
Sentencias de DDL
ddl es data definition languaje.. osea definicion de datos. Tenemos que pensar en cosas que alteran los objetos de la base de datos (nuevas entidades, borrarlas…). Mencion especial a TRUNCATE que está aqui dentro, OJO
CREATE
ALTER
DROP
TRUNCATE
En SQL, para especificar una condición que debe cumplir un grupo de agregación, usamos:
a) GROUP BY.
b) COUNT.
c) SELECT.
d) HAVING.
HAVING
Después de crear el usuario de la BD museo_consulta, se necesita que se le asigne permisos de SELECT en la tabla ENTIDADES_EXTERNAS. La sentencia para ello sería:
a) GRANT SELECT IN TABLE ENTIDADES_EXTERNAS TO museo_consulta.
b) GRANT SELECT ON ENTIDADES_EXTERNAS TO museo_consulta.
c) GRANT USAGE SELECT TO ENTIDADES_EXTERNAS ON museo_consulta.
d) GRANT SELECT TO ENTIDADES_EXTERNAS ON museo_consultas.
B
GRANT SELECT ON ENTIDADES_EXTERNAS TO museo_consulta.
¿Cuál de las siguientes afirmaciones es incorrecta respecto de los DFD?
a) El DFD de nivel 0 o Diagrama de Contexto es el de menor detalle.
b) En el DFD de nivel 0 aparece un solo proceso que representa el sistema.
c) En el DFD de nivel 1 aparece un proceso por cada subsistema.
d) En el DFD de nivel 1 aparecen las entidades externas y los flujos de datos entre éstas y los subsistemas.
D
En el DFD de nivel 1 aparecen las entidades externas y los flujos de datos entre éstas y los subsistemas.
Que se ve en el DFD de nivel 0 ?
Un DFD de nivel 0, también conocido como diagrama de contexto, proporciona una visión general del sistema. Muestra las interacciones principales entre el sistema y las entidades externas (usuarios, otros sistemas, etc.) sin entrar en detalles sobre los procesos internos. Es el primer paso en el modelado de un sistema para entender los límites y las principales entradas y salidas.
Que se ve en el DFD de nivel 1 ?
Un DFD de nivel 1 desglosa el sistema mostrado en el diagrama de contexto (nivel 0) en subprocesos más detallados. Muestra cómo los datos fluyen entre los procesos principales del sistema y destaca cómo se conectan esos procesos a los almacenes de datos y a las entidades externas. Básicamente, ofrece un vistazo más profundo de las funcionalidades internas del sistema.
Si el nivel 0 es el mapa de un país, el nivel 1 es como una vista de las diferentes ciudades y carreteras que las conectan.
Que se ve en el DFD de nivel 2 ?
En un DFD de nivel 2, el sistema se descompone aún más en subprocesos más específicos y detallados. Este nivel muestra el funcionamiento interno de los procesos principales que se vieron en el DFD de nivel 1. Aquí se detallan las interacciones entre subprocesos, los flujos de datos entre estos y los almacenes de datos más desglosados.
Si el nivel 0 es un mapa del país, el nivel 1 es un mapa de las ciudades principales y el nivel 2 es un mapa de los barrios y calles dentro de esas ciudades.
Cada nivel añade más detalle y claridad sobre cómo opera el sistema
Cuantos niveles tiene un DFD ?
5 (del 0 al 4)
Resumen de los distintos niveles de un DFD
0: Diagrama de contexto
1: Subsistema
2: Funciones de cada subsistema
3: Subfunciones asociadas a cada uno de los eventos del sistema
4: Procesos de las subfunciones
Las consecuencias principales de que una base de datos NO esté normalizada adecuadamente son:
a) Errores de inconsistencias, incoherencias, actualización y redundancia de datos.
b) Problemas de bloque en las transacciones de las bases de datos.
c) Problemas de disponibilidad de la base de datos.
d) Dificultad para dimensionar adecuadamente las necesidades de almacenamiento de la
base de datos.
A
Errores de inconsistencias, incoherencias, actualización y redundancia de datos.
El modelo de datos relacional fue introducido por:
a) Codd.
b) Hamming.
c) Ritchie.
d) Adleman.
A
Codd
Cuál de las siguientes opciones NO es una característica del lenguaje de programación Java?
a) Orientado a objetos
b) Tipado estático
c) Dependiente de la plataforma
d) Robusto
C
Dependiente de la plataforma
Java es conocido por ser independiente de la plataforma gracias a la Máquina Virtual de Java (JVM), que permite ejecutar el mismo código en diferentes sistemas operativos sin modificación. Las otras características mencionadas son, efectivamente, características de Java.
¿Qué herramienta se utiliza para compilar código Java en bytecode?
a) javac
b) java
c) jar
d) javadoc
A
javac
¿Qué significa que una clase Java sea declarada como “final”?
a) Que es una constante.
b) Que es un método que no puede ser sobrescrito.
c) Que no se puede heredar de ella
d) Que no puede tener métodos abstractos.
C
Que no se puede heredar de ella
¿Sobre que puerto trabaja Git Protocol?
a)9418
b)9481
c)9488
d)9411
A
9418
¿Sobre que puerto trabaja Git Protocol?
9418
¿Que tipos de ficheros están relacionados con un repositorio de tipo npm?
a)c++
b)Java
c) Node.js
d)c#
C
Node.js
npm (Node Package Manager) es el gestor de paquetes para Node.js, por lo que los repositorios npm están directamente relacionados con proyectos y archivos de Node.js. Los otros lenguajes mencionados no están vinculados a npm.
¿Con que comando me traigo los datos de Git a local repo y al working directory?
GIT PULL
La regla 5 de Codd está relacionada con
a) Regla del sublenguaje de datos completo
b) Regla de actualización de vistas
c) Inserción, actualización y borrado de alto nivel
d) Independencia física de los datos
A
Regla del sublenguaje de datos completo
Que significa que la relación está en 3 FN
a) No contiene grupos repetitivos
b)SI está en 1FN y todos los atributos no principales tienen dependencia funcional completa de la PK
c) Si está en 2FN y cada dependencia funcional no trivial tiene una clave candidata como determinante
d) SI está en 2FN y además cada atributo que no forma parte de la PK no depende transitivamente de la PK
D
SI está en 2FN y además cada atributo que no forma parte de la PK no depende transitivamente de la PK
En un fichero xml ¿Que significa que tenga el valor standalone=”no”?
a) el documento NO depende de un recurso externo si lleva body
b) el documento NO depende de un recurso externo
c) el documento depende de un recurso externo
d) standalone no se utiliza en xml.
C
el documento depende de un recurso externo
Standalone se refiere a si puede funcionar solo. Si el valor nos indica que NO, esto es, standalone no, nos está indicando que NO puede ir solo, que depende de otro recurso
Para que vale JAXB
a)API de Java que permite convertir (marshalling) objetos Java en XML y viceversa (unmarshalling)
b) API de Java que permite convertir (unmarshalling) objetos Java en XML y viceversa (marshalling)
c)API de .NET que permite convertir (marshalling) objetos Java en XML y viceversa (unmarshalling)
d) API de .NET que permite convertir (unmarshalling) objetos Java en XML y viceversa (marshalling)
A
API de Java que permite convertir (marshalling) objetos Java en XML y viceversa (unmarshalling)
Un fichero yml está basado en
a) indentaciones
b) tabulaciones
c) saltos de línea
d) cierre de líneas con ;
A
indentaciones
En que se basa la seguridad de Postgre SQL ?
En roles
Dime los puertos que usan Oracle, SQL Server, Maria DB y Postgre
Oracle - 1521
SQL Server - 1433
MariaDB - 3306
PostgreSQL - 5432