SlideShare una empresa de Scribd logo
1 de 7
Framework
(entorno de trabajo)
• Abstracción de un componente de software para resolver un problema en un contexto.
• Estructura conceptual y tecnológica de asistencia definida, normalmente, con
artefactos o módulos concretos de software, que puede servir de base para la
organización y desarrollo de software.
• Aplicación genérica que interactúa con nuestro desarrollo y que a la vez es
configurable.
• Objetivos:
• Acelerar el proceso de desarrollo.
• Reutilizar código ya existente.
• Promover buenas practicas de desarrollo como el uso de patrones.
Maven
• Herramienta de gestión de proyectos.
• Utilizada para:
• Gestión de dependencias.
• Herramienta de compilación.
• Herramienta de documentación.
• Se usa principalmente en proyectos Java (está escrita en este lenguaje).
• Es una herramienta declarativa: todo lo que definamos se almacena en un archivo XML que
funcionar.
• Maven nos permite:
• Gestionar las dependencias del proyecto.
• Compilar el código fuente de la aplicación de manera automática.
• Empaquetar el código en archivos .jar o .zip.
• Instalar los paquetes en un repositorio.
• Generar documentación a partir del código fuente.
• Gestionar las distintas fases del ciclo de vida de las build.
POM (Modelo de
Objetos de
Proyecto)
• Es la unidad básica de trabajo en
Maven.
• Es un archivo XML llamado
pom.xml que se encuentra por
defecto en la raíz del proyecto y
que contiene toda la información
del mismo:
• Configuración.
• Dependencias.
• Etc.
Spring Framework Stereotype
Annotations
• @Component:
• Esta anotación se usa en clases para indicar un componente Spring.
• Marca la clase Java como un bean o componente para que el mecanismo de exploración de componentes de Spring pueda agregarla al contexto
de la aplicación.
• @Controller:
• Se usa para indicar que la clase es un controlador Spring.
• Esta anotación se puede utilizar para identificar controladores para Spring MVC o Spring WebFlux.
• @Service
• Marca una clase Java que realiza algún servicio, como ejecutar lógica de negocios, realizar cálculos y llamar a API externas.
• Esta anotación es una forma especializada de la anotación @Component destinada a ser utilizada en la capa de servicio.
• @Repository
• Esta anotación se utiliza en clases Java que acceden directamente a la base de datos.
• Funciona como un marcador para cualquier clase que cumpla la función de repositorio u Objeto de acceso a datos.
• Esta anotación tiene una función de traducción automática. Por ejemplo, cuando ocurre una excepción, hay un controlador para esa excepción y no
es necesario agregar un bloque try-catch.
• @SpringBootApplication
• Esta anotación se utiliza en la clase de aplicación al configurar un proyecto Spring Boot.
• La clase anotada con esta anotación debe mantenerse en el paquete base.
• Lo único que hace esta anotación es un escaneo de componentes, pero escaneará solo sus subpaquetes. Como ejemplo, si coloca la clase en el
ejemplo com, entonces @SpringBootApplication escaneará todos sus subpaquetes.
• @RestController
• Esta anotación se usa a nivel de clase.
• Marca la clase como un controlador donde cada método devuelve un objeto de dominio en lugar de una vista.
• Al anotar una clase con esta anotación, ya no necesita agregar @ResponseBody a todos los métodos RequestMapping. Significa que ya no usa
resuelve vistas ni envía HTML en respuesta. Simplemente envía el objeto de dominio como una respuesta HTTP en el formato que entienden los
consumidores, como JSON.
Anotaciones dentro
de un @Controller
• @RequestMapping:
• Esta anotación se usa tanto a nivel de
clase como de método.
• Se utiliza para asignar solicitudes web
a clases de manejador y métodos de
manejador específicos.
• Cuando se usa en el nivel de clase,
crea un URI base para el que se usará
el controlador.
• Cuando se utiliza en los métodos, le
dará el URI en el que se ejecutarán los
métodos del controlador. A partir de
esto, puede inferir que la asignación de
solicitud a nivel de clase seguirá
siendo la misma, mientras que cada
método de controlador tendrá su propia
asignación de solicitud.
@RequestMapping (Variantes)
• @GetMapping:
• Esta anotación se utiliza para asignar solicitudes HTTP GET a métodos de controlador específicos.
• Es una anotación compuesta que actúa como un acceso directo para @RequestMapping (method =
RequestMethod.GET).
• @ PostMapping:
• Esta anotación se utiliza para asignar solicitudes HTTP POST a métodos de controlador específicos.
• Es una anotación compuesta que actúa como un acceso directo para @RequestMapping (method =
RequestMethod.POST).
• @ PutMapping :
• Esta anotación se utiliza para mapear solicitudes HTTP PUT en métodos de manejador específicos.
• Es una anotación compuesta que actúa como un acceso directo para @RequestMapping (method =
RequestMethod.PUT).
• @ DeleteMapping :
• Esta anotación se usa para asignar solicitudes HTTP DELETE a métodos de controlador específicos.
• Es una anotación compuesta que actúa como un acceso directo para @RequestMapping (method =
RequestMethod.DELETE).
• @ PathVariable:
• Esta anotación se utiliza para anotar argumentos del método del
controlador de solicitudes.
• La anotación @RequestMapping se puede usar para manejar
cambios dinámicos en el URI donde un cierto valor de URI actúa como
parámetro. Puede especificar este parámetro usando una expresión
regular. La anotación @PathVariable se puede usar para declarar este
parámetro.
• @RequestBody:
• Esta anotación se utiliza para anotar argumentos del método del
controlador de solicitudes.
• Indica que un parámetro de método debe estar vinculado al valor del
cuerpo de la solicitud HTTP. El HttpMessageConveter es responsable
de convertir del mensaje de solicitud HTTP a objeto.

Más contenido relacionado

Similar a Resumen Framework, Maven, Anotaciones de spring.pptx

Patrones de diseño II
Patrones de diseño IIPatrones de diseño II
Patrones de diseño II
kaolong
 
SpringFramework Overview
SpringFramework OverviewSpringFramework Overview
SpringFramework Overview
zerovirus23
 
Java struts2 - 03 componentes de la aplicacion
Java   struts2 - 03 componentes de la aplicacionJava   struts2 - 03 componentes de la aplicacion
Java struts2 - 03 componentes de la aplicacion
Jechu2013
 

Similar a Resumen Framework, Maven, Anotaciones de spring.pptx (20)

Jdbc
JdbcJdbc
Jdbc
 
Patrones de diseño II
Patrones de diseño IIPatrones de diseño II
Patrones de diseño II
 
La Arquitectura De Netbeans V2
La Arquitectura De Netbeans V2La Arquitectura De Netbeans V2
La Arquitectura De Netbeans V2
 
5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx
5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx
5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx
 
Semana 2 Configuración entorno de desarrollo
Semana 2   Configuración entorno de desarrolloSemana 2   Configuración entorno de desarrollo
Semana 2 Configuración entorno de desarrollo
 
Manualcake
ManualcakeManualcake
Manualcake
 
Spring Mvc Final
Spring Mvc FinalSpring Mvc Final
Spring Mvc Final
 
SpringFramework Overview
SpringFramework OverviewSpringFramework Overview
SpringFramework Overview
 
Desarrollo de Apps Web en Ruby on Rails
Desarrollo de Apps Web en Ruby on RailsDesarrollo de Apps Web en Ruby on Rails
Desarrollo de Apps Web en Ruby on Rails
 
Java struts2 - 03 componentes de la aplicacion
Java   struts2 - 03 componentes de la aplicacionJava   struts2 - 03 componentes de la aplicacion
Java struts2 - 03 componentes de la aplicacion
 
Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...
Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...
Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...
 
Maven Overview
Maven OverviewMaven Overview
Maven Overview
 
Strust
StrustStrust
Strust
 
Framework kahana
Framework kahanaFramework kahana
Framework kahana
 
Django - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales ConceptosDjango - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales Conceptos
 
Django - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales ConceptosDjango - Curso Básico - Principales Conceptos
Django - Curso Básico - Principales Conceptos
 
Introducción a Kohana Framework
Introducción a Kohana FrameworkIntroducción a Kohana Framework
Introducción a Kohana Framework
 
Probando aplicaciones AngularJS
Probando aplicaciones AngularJSProbando aplicaciones AngularJS
Probando aplicaciones AngularJS
 
Web framework ligeros y micros en java barcamp 2014
Web framework ligeros y micros en java   barcamp 2014Web framework ligeros y micros en java   barcamp 2014
Web framework ligeros y micros en java barcamp 2014
 
POOABD (POO Aplicada a B Datos) - API JDBC - Parte 2
POOABD (POO Aplicada a B Datos) - API JDBC - Parte 2POOABD (POO Aplicada a B Datos) - API JDBC - Parte 2
POOABD (POO Aplicada a B Datos) - API JDBC - Parte 2
 

Último

INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
evercoyla
 
4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdf
4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdf4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdf
4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdf
nicolascastaneda8
 

Último (20)

nomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestacionesnomenclatura de equipo electrico en subestaciones
nomenclatura de equipo electrico en subestaciones
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
 
ingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptxingenieria grafica para la carrera de ingeniera .pptx
ingenieria grafica para la carrera de ingeniera .pptx
 
JM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdf
JM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdfJM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdf
JM HIDROGENO VERDE- OXI-HIDROGENO en calderas - julio 17 del 2023.pdf
 
Sesion 6 _ Curso Integrador II_TSZVQJ.pdf
Sesion 6 _ Curso Integrador II_TSZVQJ.pdfSesion 6 _ Curso Integrador II_TSZVQJ.pdf
Sesion 6 _ Curso Integrador II_TSZVQJ.pdf
 
Elaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdfElaboración de la estructura del ADN y ARN en papel.pdf
Elaboración de la estructura del ADN y ARN en papel.pdf
 
Lineamientos del Plan Oferta y Demanda sesión 5
Lineamientos del Plan Oferta y Demanda sesión 5Lineamientos del Plan Oferta y Demanda sesión 5
Lineamientos del Plan Oferta y Demanda sesión 5
 
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNATINSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
INSUMOS QUIMICOS Y BIENES FISCALIZADOS POR LA SUNAT
 
413924447-Clasificacion-de-Inventarios-ABC-ppt.ppt
413924447-Clasificacion-de-Inventarios-ABC-ppt.ppt413924447-Clasificacion-de-Inventarios-ABC-ppt.ppt
413924447-Clasificacion-de-Inventarios-ABC-ppt.ppt
 
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSIONCALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
CALCULO SISTEMA DE PUESTA A TIERRA PARA BAJA TENSION Y MEDIA TENSION
 
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
 
Gestion de proyectos para el control y seguimiento
Gestion de proyectos para el control  y seguimientoGestion de proyectos para el control  y seguimiento
Gestion de proyectos para el control y seguimiento
 
Presentacion de la ganaderia en la región
Presentacion de la ganaderia en la regiónPresentacion de la ganaderia en la región
Presentacion de la ganaderia en la región
 
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheAportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
 
4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdf
4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdf4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdf
4º Clase Laboratorio (2024) Completo Mezclas Asfalticas Caliente (1).pdf
 
Maquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdfMaquinaria Agricola utilizada en la produccion de Piña.pdf
Maquinaria Agricola utilizada en la produccion de Piña.pdf
 
27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt
 
Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...
 
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADOPERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
PERFORACIÓN Y VOLADURA EN MINERÍA APLICADO
 
Desigualdades e inecuaciones-convertido.pdf
Desigualdades e inecuaciones-convertido.pdfDesigualdades e inecuaciones-convertido.pdf
Desigualdades e inecuaciones-convertido.pdf
 

Resumen Framework, Maven, Anotaciones de spring.pptx

  • 1. Framework (entorno de trabajo) • Abstracción de un componente de software para resolver un problema en un contexto. • Estructura conceptual y tecnológica de asistencia definida, normalmente, con artefactos o módulos concretos de software, que puede servir de base para la organización y desarrollo de software. • Aplicación genérica que interactúa con nuestro desarrollo y que a la vez es configurable. • Objetivos: • Acelerar el proceso de desarrollo. • Reutilizar código ya existente. • Promover buenas practicas de desarrollo como el uso de patrones.
  • 2. Maven • Herramienta de gestión de proyectos. • Utilizada para: • Gestión de dependencias. • Herramienta de compilación. • Herramienta de documentación. • Se usa principalmente en proyectos Java (está escrita en este lenguaje). • Es una herramienta declarativa: todo lo que definamos se almacena en un archivo XML que funcionar. • Maven nos permite: • Gestionar las dependencias del proyecto. • Compilar el código fuente de la aplicación de manera automática. • Empaquetar el código en archivos .jar o .zip. • Instalar los paquetes en un repositorio. • Generar documentación a partir del código fuente. • Gestionar las distintas fases del ciclo de vida de las build.
  • 3. POM (Modelo de Objetos de Proyecto) • Es la unidad básica de trabajo en Maven. • Es un archivo XML llamado pom.xml que se encuentra por defecto en la raíz del proyecto y que contiene toda la información del mismo: • Configuración. • Dependencias. • Etc.
  • 4. Spring Framework Stereotype Annotations • @Component: • Esta anotación se usa en clases para indicar un componente Spring. • Marca la clase Java como un bean o componente para que el mecanismo de exploración de componentes de Spring pueda agregarla al contexto de la aplicación. • @Controller: • Se usa para indicar que la clase es un controlador Spring. • Esta anotación se puede utilizar para identificar controladores para Spring MVC o Spring WebFlux. • @Service • Marca una clase Java que realiza algún servicio, como ejecutar lógica de negocios, realizar cálculos y llamar a API externas. • Esta anotación es una forma especializada de la anotación @Component destinada a ser utilizada en la capa de servicio. • @Repository • Esta anotación se utiliza en clases Java que acceden directamente a la base de datos. • Funciona como un marcador para cualquier clase que cumpla la función de repositorio u Objeto de acceso a datos. • Esta anotación tiene una función de traducción automática. Por ejemplo, cuando ocurre una excepción, hay un controlador para esa excepción y no es necesario agregar un bloque try-catch. • @SpringBootApplication • Esta anotación se utiliza en la clase de aplicación al configurar un proyecto Spring Boot. • La clase anotada con esta anotación debe mantenerse en el paquete base. • Lo único que hace esta anotación es un escaneo de componentes, pero escaneará solo sus subpaquetes. Como ejemplo, si coloca la clase en el ejemplo com, entonces @SpringBootApplication escaneará todos sus subpaquetes. • @RestController • Esta anotación se usa a nivel de clase. • Marca la clase como un controlador donde cada método devuelve un objeto de dominio en lugar de una vista. • Al anotar una clase con esta anotación, ya no necesita agregar @ResponseBody a todos los métodos RequestMapping. Significa que ya no usa resuelve vistas ni envía HTML en respuesta. Simplemente envía el objeto de dominio como una respuesta HTTP en el formato que entienden los consumidores, como JSON.
  • 5. Anotaciones dentro de un @Controller • @RequestMapping: • Esta anotación se usa tanto a nivel de clase como de método. • Se utiliza para asignar solicitudes web a clases de manejador y métodos de manejador específicos. • Cuando se usa en el nivel de clase, crea un URI base para el que se usará el controlador. • Cuando se utiliza en los métodos, le dará el URI en el que se ejecutarán los métodos del controlador. A partir de esto, puede inferir que la asignación de solicitud a nivel de clase seguirá siendo la misma, mientras que cada método de controlador tendrá su propia asignación de solicitud.
  • 6. @RequestMapping (Variantes) • @GetMapping: • Esta anotación se utiliza para asignar solicitudes HTTP GET a métodos de controlador específicos. • Es una anotación compuesta que actúa como un acceso directo para @RequestMapping (method = RequestMethod.GET). • @ PostMapping: • Esta anotación se utiliza para asignar solicitudes HTTP POST a métodos de controlador específicos. • Es una anotación compuesta que actúa como un acceso directo para @RequestMapping (method = RequestMethod.POST). • @ PutMapping : • Esta anotación se utiliza para mapear solicitudes HTTP PUT en métodos de manejador específicos. • Es una anotación compuesta que actúa como un acceso directo para @RequestMapping (method = RequestMethod.PUT). • @ DeleteMapping : • Esta anotación se usa para asignar solicitudes HTTP DELETE a métodos de controlador específicos. • Es una anotación compuesta que actúa como un acceso directo para @RequestMapping (method = RequestMethod.DELETE).
  • 7. • @ PathVariable: • Esta anotación se utiliza para anotar argumentos del método del controlador de solicitudes. • La anotación @RequestMapping se puede usar para manejar cambios dinámicos en el URI donde un cierto valor de URI actúa como parámetro. Puede especificar este parámetro usando una expresión regular. La anotación @PathVariable se puede usar para declarar este parámetro. • @RequestBody: • Esta anotación se utiliza para anotar argumentos del método del controlador de solicitudes. • Indica que un parámetro de método debe estar vinculado al valor del cuerpo de la solicitud HTTP. El HttpMessageConveter es responsable de convertir del mensaje de solicitud HTTP a objeto.