Prefacio
En el blog anterior, registramos el servicio a Eureka. Podemos ver en la interfaz de Uureka de la interfaz de usuario de Eureka qué servicios se han registrado en el servidor Eureka. Sin embargo, si queremos ver qué métodos de interfaz RESTFUL proporcionan el servicio actual, no tenemos forma de obtenerlos. El método tradicional es ordenar un documento de interfaz de servicio para la comunicación entre desarrolladores. En este caso, muchas veces, causará inconsistencias entre el documento y el código, como el código que se cambia, pero el documento de interfaz no se ha cambiado, y Swagger2 nos proporciona una solución perfecta. Echemos un vistazo a cómo Swagger2 resuelve el problema.
1. Introducir el paquete jar que Swagger2 depende
< </pendency>
2. Inicializar la configuración de Swagger2
@Configuration @habilswagger2 // habilitar swagger2 public class swagger2 {@bean public docket creeaterestapi () {// Crear información básica API Devuelve nuevo Docket (DocumationType.swagger_2) .ApiInfo (apiInfo ()) .select () .APIS (requestHandLerLectors.BASEPACKAGE ("com.chhliu.jpa"))) // escanea todas las API en este paquete que deben mostrarse en Swagger, excepto para anotación de @apiignore anotado.paths (PathSelectors.any ()) .Build (); } private apiinfo apiInfo () {// información básica sobre la creación de API, que se mostrará en la interfaz de usuario de Swagger. Return nuevo apiinfobuilder () .title ("construya apis RESTFUL en arranque de primavera usando swagger2") // api title.description ("API RESTFUL proporcionadas por rdcloud-jpa") // api Descripción.contact ("chhliu@") // contact.version ("1.0") // número de versión. }}Nota: Esta clase de configuración debe crearse en el directorio de aplicaciones en el mismo nivel. Cuando se inicia el proyecto, la clase de configuración se inicializa.
3. Mejorar la información del documento de API
interfaz pública sonarControlleri {@apioperation (value = "obtener información de URL correspondiente al sonar del grupo de proyecto", notas = "Obtenga información de URL correspondiente al sonar del grupo de proyecto basado en ID") // use esta anotación para describir la información del método de interfaz @apiimpliceCitParams ( @@apiiMpLicitParam (name = "id", value = "Tabla de sonarUrl @ApiimpliCeMs ( @ @@apiiMpliceParam (name =" Id ", Value =" SonarUrl Id ", requería", requerido ", requerido", requerido verdadero = Tabla = ", requerido verdadero = Tabla =", requirió un ID de verdadera = "TrerAtytygum. "Long", paramType = "ruta")}) // Use esta anotación para describir la información del parámetro del método. Cabe señalar aquí que el parámetro ParamType debe configurarse como ruta, de lo contrario se informará un error al acceder al método de interfaz en el ui @getmapping ("/get/{id}") Sonarurl get (@PathVariable Long ID); @Apioperation (value = "Obtenga toda la información de URL correspondiente al grupo del grupo de proyecto") @getMapping ("/get/todos") Lista <DonarUrl> getAll (); } Nota: ParamType representa el tipo de parámetro, los valores opcionales son "ruta", "cuerpo", "consulta", "encabezado", "forma"
4. Mejorar la información del tipo de retorno
@Entity (name = "Sonar_url") Public Class Sonarurl implementa serializable { / ** * * / private Static final Long SerialVersionUid = 1l; @Apimodelproperty (valor = "clave primaria", hidden = false, notas = "clave primaria, oculta", requerido = true, datatype = "long") // Use esta anotación para describir la información de la propiedad. Cuando está oculto = verdadero, esta propiedad no se mostrará en la API @ID @GeneratedValue (estrategia = GenerationType.auto) ID de largo privado; @Apimodelproperty (valor = "dirección de enlace de url") @column (name = "url") url de cadena privada; @Apimodelproperty (valor = "grupo de proyecto") @column (name = "equipo") equipo de cadena privada; @Apimodelproperty (valor = "departamento") @column (name = "departamento") Departamento de cadena privada; ... omitir getter, método setter ...}5. Inicie la aplicación
1. Ingrese en el navegador: http: // localhost: 7622/swagger-ui.html
2. Los resultados son los siguientes:
6. Acceso y pruebas de documentos de API
Además de proporcionar una función de visualización de interfaz de API, Swagger también proporciona funciones de depuración y prueba.
Los resultados de la prueba son los siguientes:
Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.