Skip to content

Commit

Permalink
Updated SwaggerConfig
Browse files Browse the repository at this point in the history
  • Loading branch information
andresWeitzel committed Sep 19, 2022
1 parent 189eb93 commit 6792517
Show file tree
Hide file tree
Showing 6 changed files with 37 additions and 59 deletions.
23 changes: 1 addition & 22 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -62,28 +62,7 @@
</dependency>


<!-- CONVERTIR OBJETOS JAVA EN OBJETOS XML -->
<!-- https://mvnrepository.com/artifact/javax.xml.bind/jaxb-api -->
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
</dependency>



<!-- CONVERTIR OBJETOS JAVA EN OBJETOS JSON -->
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<!-- API LECTURA DE ANNOTATION -->
<!-- https://mvnrepository.com/artifact/javax.annotation/javax.annotation-api -->
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
</dependency>


<!-- API PARA LAS VALIDACIONES -->
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-validation -->
<dependency>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -201,14 +201,14 @@ public Page<Componente> getAllFilterComponente(@PathVariable String filtro, Page
// ===============
// ===== GET =====
// ===============
@ApiOperation(value = "Listado Paginado de Componentes con Filtro", notes = "Devuelve el/los Componente/s paginados")
@ApiOperation(value = "Componente según su ID", notes = "Devuelve el Componente según su ID")
@ApiResponses(value = {
@ApiResponse(code = 200, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
@ApiResponse(code = 201, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
@ApiResponse(code = 400, message = "No se ha/han podido Listar los Componente con Filtro. Comprobar la Solicitud"),
@ApiResponse(code = 401, message = "No está autorizado para listar el/los Componente/s con Filtro. Verificar credenciales"),
@ApiResponse(code = 403, message = "No se ha/han podido listar el/los Componente con Filtro. El servidor ha denegado esta operación"),
@ApiResponse(code = 404, message = "El Listado de/los Componente/s con Filtro no está Disponible ya que el recurso pedido no existe. Comprobar solicitud"),
@ApiResponse(code = 200, message = "Se ha Listado el Componente según su ID Correctamente"),
@ApiResponse(code = 201, message = "Se ha Listado el Componente según su ID Correctamente"),
@ApiResponse(code = 400, message = "No se ha Listado el Componente según su ID. Comprobar la Solicitud"),
@ApiResponse(code = 401, message = "No está autorizado para listar el Componente según su ID. Verificar credenciales"),
@ApiResponse(code = 403, message = "No se ha podido listar eel Componente según su ID. El servidor ha denegado esta operación"),
@ApiResponse(code = 404, message = "El Listado del Componente según su ID no está Disponible ya que el recurso pedido no existe. Comprobar solicitud"),
@ApiResponse(code = 405, message = "El recurso ha sido deshabilitado."),
@ApiResponse(code = 407, message = "La autenticación debe estar hecha a partir de un proxy."),
@ApiResponse(code = 408, message = "Se ha superado el tiempo de espera entre la solicitud y el servidor. Intentar nuevamente"),
Expand All @@ -228,7 +228,7 @@ public Componente getById(@PathVariable("id") int id) {
// ===============
// ===== GET =====
// ===============
@ApiOperation(value = "Listado Paginado de Componentes con Filtro", notes = "Devuelve el/los Componente/s paginados")
@ApiOperation(value = "Listado Paginado de Componentes según su código", notes = "Devuelve el/los Componente/s paginados")
@ApiResponses(value = {
@ApiResponse(code = 200, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
@ApiResponse(code = 201, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
Expand Down Expand Up @@ -257,7 +257,7 @@ public Page<Componente> getByCodigo(@PathVariable("codigo") String codigo, Pagea
// ===============
// ===== GET =====
// ===============
@ApiOperation(value = "Listado Paginado de Componentes con Filtro", notes = "Devuelve el/los Componente/s paginados")
@ApiOperation(value = "Listado Paginado de Componentes según su imagen", notes = "Devuelve el/los Componente/s paginados")
@ApiResponses(value = {
@ApiResponse(code = 200, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
@ApiResponse(code = 201, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
Expand All @@ -284,7 +284,7 @@ public Page<Componente> getByImagen(@PathVariable("imagen") String imagen, Pagea
// ===============
// ===== GET =====
// ===============
@ApiOperation(value = "Listado Paginado de Componentes con Filtro", notes = "Devuelve el/los Componente/s paginados")
@ApiOperation(value = "Listado Paginado de Componentes según su hoja de datos", notes = "Devuelve el/los Componente/s paginados")
@ApiResponses(value = {
@ApiResponse(code = 200, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
@ApiResponse(code = 201, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
Expand All @@ -311,7 +311,7 @@ public Page<Componente> getByDatasheet(@PathVariable("datasheet") String datashe
//===============
// ===== GET =====
// ===============
@ApiOperation(value = "Listado Paginado de Componentes con Filtro", notes = "Devuelve el/los Componente/s paginados")
@ApiOperation(value = "Listado Paginado de Componentes según su nro de pieza", notes = "Devuelve el/los Componente/s paginados")
@ApiResponses(value = {
@ApiResponse(code = 200, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
@ApiResponse(code = 201, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
Expand All @@ -338,7 +338,7 @@ public Page<Componente> getByNroPieza(@PathVariable("nroPieza") String nroPieza,
// ===============
// ===== GET =====
// ===============
@ApiOperation(value = "Listado Paginado de Componentes con Filtro", notes = "Devuelve el/los Componente/s paginados")
@ApiOperation(value = "Listado Paginado de Componentes según su categoría", notes = "Devuelve el/los Componente/s paginados")
@ApiResponses(value = {
@ApiResponse(code = 200, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
@ApiResponse(code = 201, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
Expand All @@ -365,7 +365,7 @@ public Page<Componente> getByCategoria(@PathVariable("categoria") String categor
// ===============
// ===== GET =====
// ===============
@ApiOperation(value = "Listado Paginado de Componentes con Filtro", notes = "Devuelve el/los Componente/s paginados")
@ApiOperation(value = "Listado Paginado de Componentes según su descripción", notes = "Devuelve el/los Componente/s paginados")
@ApiResponses(value = {
@ApiResponse(code = 200, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
@ApiResponse(code = 201, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
Expand All @@ -392,7 +392,7 @@ public Page<Componente> getByDescripcion(@PathVariable("descripcion") String des
// ===============
// ===== GET =====
// ===============
@ApiOperation(value = "Listado Paginado de Componentes con Filtro", notes = "Devuelve el/los Componente/s paginados")
@ApiOperation(value = "Listado Paginado de Componentes según su fabricante", notes = "Devuelve el/los Componente/s paginados")
@ApiResponses(value = {
@ApiResponse(code = 200, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
@ApiResponse(code = 201, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
Expand All @@ -419,7 +419,7 @@ public Page<Componente> getByFabricante(@PathVariable("fabricante") String fabri
// ===============
// ===== GET =====
// ===============
@ApiOperation(value = "Listado Paginado de Componentes con Filtro", notes = "Devuelve el/los Componente/s paginados")
@ApiOperation(value = "Listado Paginado de Componentes según su stock", notes = "Devuelve el/los Componente/s paginados")
@ApiResponses(value = {
@ApiResponse(code = 200, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
@ApiResponse(code = 201, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
Expand All @@ -446,7 +446,7 @@ public Page<Componente> getByStock(@PathVariable("stock") int stock, Pageable pa
// ===============
// ===== GET =====
// ===============
@ApiOperation(value = "Listado Paginado de Componentes con Filtro", notes = "Devuelve el/los Componente/s paginados")
@ApiOperation(value = "Listado Paginado de Componentes según su precio", notes = "Devuelve el/los Componente/s paginados")
@ApiResponses(value = {
@ApiResponse(code = 200, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
@ApiResponse(code = 201, message = "Se han Listado el/los Componente/s con Filtro Correctamente"),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,8 @@
@NoArgsConstructor
public class Componente {

@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "seq_comp")
@SequenceGenerator(name = "seq_comp", sequenceName = "id_seq_comp", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "seq_comp_microelec")
@SequenceGenerator(name = "seq_comp_microelec", sequenceName = "id_seq_comp_microelec", allocationSize = 1)
@Id
@Column(name = "id")
private int id;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,13 @@
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import org.springframework.stereotype.Repository;

import com.api.rest.microelectronica.entities.Componente;




@Repository
public interface I_ComponenteRepository extends JpaRepository<Componente, Serializable>, PagingAndSortingRepository<Componente, Serializable>{

//============================ MÉTODOS DE BÚSQUEDA ==============================
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,7 @@
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;

import springfox.documentation.service.*;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
Expand All @@ -29,22 +28,21 @@ public Docket api(){
//"ApiRest Productos Supermercado v3.0"
private ApiInfo apiInfo(){
return new ApiInfo(
"ApiRest Productos Supermercado",
"* Api Rest para el Microservice App_MicroFrontEnd_Productos implementada con Spring Boot, Spring MVC, Spring Security, JWT , Spring Data JPA, SpringDoc-OpenApi, Swagger UI, Maven, Lombok, Postman, Log4j, Git, DBeaver, pgAdmin y PostgreSQL.\r\n"
+ "* La Api Rest implementa todas las Operaciones CRUD, tanto para productos como para usuarios. \r\n"
+ "* Se separa la capa de seguridad para la autenticación , implementando Spring Security y JWT. Además de realizar las operaciones CRUD para usuarios se aplica login y signin para la capa de presentación.\r\n"
+ "* También se desarrollan los métodos de búsquedas independientes de tipo Like para todos los campos, tanto de usuarios como productos.\r\n"
+ "* Los objetos de tipo getBy se manipulan como paginados, salvo los getById y Optional que se requiere un response por objeto y no una E.D como de tipo lista, stream, etc.\r\n"
+ "* Se Desarrollan Clases Específicas para el Manejo de Excepciones para cada Servicio , como también un manejador de excepciones y validaciones por campos de beans.\r\n"
+ "* Todas las funcionalidades tienen generación de logs en el Server para los errores y excepciones personalizadas\r\n"
+ "* Se incluye documentación completa de la Api con open-api para la visualización con swagger-ui, las anotaciones de open-api se aplican junto con los códigos de respuesta de tipo HTTP para cada función en los respectivos controllers.\r\n"
+ "* Se pone a disposición todos los recursos anteriores para productos y usuarios.\r\n"
+ "* Entre Otros.",
"ApiRest_MicroFront_Microelectrónica",
"\r\n"
+ "* Microservicio Api Rest para el Micro FrontEnd Microelectrónica implementado con Spring Boot, Spring MVC, Spring Data JPA, SpringFox, Swagger UI, Maven, Lombok, Postman, Log4j, Git, SQLDeveloper, Oracle XE 21c y Otras Tecnologías.\r\n"
+ "* Para este Microservicio no se implementa la capa de seguridad, es posible realizarlo con Spring Security (visualizar otras Api's Rest en mi perfíl de github).\r\n"
+ "* Se incluye documentación con Swagger 2 / Spring Fox para cada recurso junto con los códigos de respuesta Http más usados. Además se agrega doc junto con validaciones para cada Bean.\r\n"
+ "* Los Objetos de Búsqueda se trabajan como paginados, incluyendo algunos de tipo CRUD. Se implementa manejos de Excepciones con clases específicas para su control.\r\n"
+ "* Entre Otros.\r\n"
+ "* Repositorio App_MicroFront_Microelectronica_React_Oracle : https://github.com/andresWeitzel/App_MicroFront_Microelectronica_React_Oracle\r\n"
+ "* Repositorio db_microElectronica : https://github.com/andresWeitzel/db_microElectronica_OracleXE\r\n"
+ "* PlayList Api Rest : https://www.youtube.com/playlist?list=PLCl11UFjHurDnmm7zqPOgpPu0fAuOHa9S",
"v3.0",
"https://github.com/andresWeitzel/ApiRest_MicroFrontEnd_ProductosSupermercado/blob/master/LICENSE",
new Contact("Andrés Weitzel","https://github.com/andresWeitzel/ApiRest_MicroFrontEnd_ProductosSupermercado" ,"andres96energy@hotmail.com"),
"https://github.com/andresWeitzel/ApiRest_MicroFront_Microelectronica/blob/master/LICENSE",
new Contact("Andrés Weitzel","https://github.com/andresWeitzel/ApiRest_MicroFront_Microelectronica" ,"andres96energy@hotmail.com"),
"GNU v3.0",
"https://github.com/andresWeitzel/ApiRest_MicroFrontEnd_ProductosSupermercado/blob/master/LICENSE",
"https://github.com/andresWeitzel/ApiRest_MicroFront_Microelectronica/blob/master/LICENSE",
Collections.emptyList()
);
}
Expand Down
4 changes: 2 additions & 2 deletions src/main/resources/application.properties
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ server.error.whitelabel.enabled=true
#---CONFIG ORACLE DB---
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
spring.datasource.url=jdbc:oracle:thin:@localhost:1521/XE?serverTimezone=UTC
spring.datasource.username=admin_microelectronica
spring.datasource.password=admin_microelectronica
spring.datasource.username=admin_microfront_microelec
spring.datasource.password=admin_microfront_microelec
spring.jpa.database=oracle

#---CONFIG SPRING-JPA---
Expand Down

0 comments on commit 6792517

Please sign in to comment.