Grain Academy (6) -Módulo de gestión de profesores y configuración de Swagger

A continuación, comenzaremos a ingresar el texto principal y comenzaremos el desarrollo funcional del proyecto. El módulo del proyecto aquí es el módulo service-edu en la estructura del proyecto creada anteriormente. Para el proceso de creación de la estructura del proyecto, consulte https: // blog.csdn.net/qq_44762290 / article / details / 107441065

  1. Configuración del archivo de recursos application.properties o application.yml
#服务端口
server.port=8001
#服务名
spring.application.name=service-edu
#环境设置:dev,test,port
spring.profiles.active=dev
#数据库配置连接
#数据库驱动配置
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#数据库地址配置
spring.datasource.url=jdbc:///guli?serverTimezone=GMT%2B8
#用户配置
spring.datasource.username=root
spring.datasource.password=ffy106
#mybatics日志
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
  1. Desarrollar contenido de código de controlador, servicio y mapeador

    Aquí podemos usar el generador de código proporcionado por mybatis-plug para generar código relevante, el generador de código es una herramienta

Cree el paquete com.atguigu.eduservice en el directorio test / java y cree un generador de código: CodeGenerator.java

imagen

Aquí está el archivo de código del generador de código. El código es el archivo de código proporcionado por mybatis-plug. Solo necesitamos modificar parte de la configuración. El archivo de código proporcionado aquí es el siguiente.

CodeGenerator.java

Luego ejecute el programa, modifique la ruta en el archivo antes de ejecutarlo: modifíquelo a su propia ruta de archivo, aquí está la ubicación generada por el generador de códigoimagenimagen

  • Modifique su propia contraseña de base de datos

imagen

  • La estructura de directorios generada debe ser

imagen

  1. Pantalla de información del profesor

En primer lugar, después de usar el generador de código, se generará un archivo determinado, luego estamos en el archivo EduTeacherController.java bajo el paquete del controlador

Agregamos dos anotaciones

@RestController
@RequestMapping("/eduservice/teacher")

imagen

  • Servicio de inyección
@Autowired
private EduTeacherService teacherService;

imagen

  • Luego agregamos el método
 @ApiOperation(value = "所有讲师列表")
    @GetMapping("findAll")
    public List<EduTeacher> findAllTeacher() {
        //调用service的方法实现查询所有的操作
        List<EduTeacher> list = teacherService.list(null);
//        return R.ok().data("items",list);
        return list;
    }

imagen

  • Luego agregamos la clase de inicio EduApplication.java
@SpringBootApplication
@ComponentScan(basePackages = {"com.atguigu"})
public class EduApplication {
    public static void main(String[] args) {
        SpringApplication.run(EduApplication.class, args);
    }
}

imagen

Puede mostrar los datos en la base de datos.

imagen

4. Función de eliminación de la lógica del profesor

  • EduTeacherController agregar método de eliminación
@DeleteMapping("{id}")
public boolean removeById(@PathVariable String id){
return teacherService.removeById(id);}
  • Configurar el complemento Tombstone
MyBatisPlusConfig中配置
@Bean
public ISqlInjector sqlInjector() {
      return new LogicSqlInjector();}
  • Prueba, usa la prueba del método Swagger para la eliminación y otras pruebas posteriores
  1. Swagger2
  • Introducción

En el modelo de desarrollo de front-end y back-end, la documentación de la API es la mejor manera de comunicarse

Swagger2 es un marco estandarizado y completo para generar, describir, invocar y visualizar servicios web de estilo RESTFUL

  1. Oportunidad (después de que cambie la interfaz, los desarrolladores de back-end relevantes pueden ser notificados de manera oportuna y precisa)
  2. Estandarización (y garantizar la estandarización de la interfaz, como la dirección de la interfaz, el método de solicitud, los parámetros y el formato de respuesta y la información de error
  3. Coherencia (la información de la interfaz es coherente y no habrá diferencias debido a las diferentes versiones de los documentos recibidos por los desarrolladores
  4. Capacidad de prueba (prueba directamente en el documento de interfaz para facilitar la comprensión del negocio
  5. Configurar swagger2
  • Crear módulo común, crear módulo común bajo guli-parent

imagen

  • Introducir dependencias relacionadas en común
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <scope>provided </scope>
    </dependency>
    <!--mybatis-plus-->
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <scope>provided </scope>
    </dependency>
    <!--lombok用来简化实体类:需要安装lombok插件-->
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <scope>provided </scope>
    </dependency>
    <!--swagger-->
    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger2</artifactId>
        <scope>provided </scope>
    </dependency>
    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger-ui</artifactId>
        <scope>provided </scope>
    </dependency>
    <!-- redis -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-redis</artifactId>
    </dependency>
    <!-- spring2.X集成redis所需common-pool2
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-pool2</artifactId>
        <version>2.6.0</version>
    </dependency>-->
</dependencies>
  • Cree una base de servicios de submódulo en común, y la estructura después de la creación es

imagen

SwaggerConfig.java

Supongo que te gusta

Origin blog.csdn.net/qq_44762290/article/details/107541280
Recomendado
Clasificación