Trabajo de preparación de casos de SpringBootWeb

Tabla de contenido

prefacio

Preparación

Requisitos y entorno Construcción

necesidad

Construcción del entorno

especificación de desarrollo

Especificación de desarrollo tranquilo

Resultados de respuesta uniforme

Proceso de desarrollo


prefacio

Según artículos anteriores, puedo saber que he terminado de aprender los conocimientos básicos de front-end, back-end y base de datos, y luego pasar un caso de proyecto web basado en el desarrollo de proyectos SpringBoot.

Preparación

Requisitos y entorno Construcción

necesidad

  • gestión de departamentos
    • Consultar lista de departamentos
    • eliminar departamento
    • nuevo departamento
    • modificar departamento
  • gestión de empleados
    • Consultar lista de empleados (consulta de página, consulta de condición)
    • eliminar empleado
    • nuevo empleado
    • modificar empleado

Construcción del entorno

Ingeniería front-end, ingeniería back-end , base de datos MySQL

  • Preparar tablas de base de datos (dept, emp)
    • Sentencia SQL correspondiente
    • -- 部门管理
      create table dept
      (
          id          int unsigned primary key auto_increment comment '主键ID',
          name        varchar(10) not null unique comment '部门名称',
          create_time datetime    not null comment '创建时间',
          update_time datetime    not null comment '修改时间'
      ) comment '部门表';
      
      insert into dept (id, name, create_time, update_time)
      values (1, '学工部', now(), now()),
             (2, '教研部', now(), now()),
             (3, '咨询部', now(), now()),
             (4, '就业部', now(), now()),
             (5, '人事部', now(), now());
      
      
      -- 员工管理(带约束)
      create table emp
      (
          id          int unsigned primary key auto_increment comment 'ID',
          username    varchar(20)      not null unique comment '用户名',
          password    varchar(32) default '123456' comment '密码',
          name        varchar(10)      not null comment '姓名',
          gender      tinyint unsigned not null comment '性别, 说明: 1 男, 2 女',
          image       varchar(300) comment '图像',
          job         tinyint unsigned comment '职位, 说明: 1 班主任,2 讲师, 3 学工主管, 4 教研主管, 5 咨询师',
          entrydate   date comment '入职时间',
          dept_id     int unsigned comment '部门ID',
          create_time datetime         not null comment '创建时间',
          update_time datetime         not null comment '修改时间'
      ) comment '员工表';
      
      INSERT INTO emp
      (id, username, password, name, gender, image, job, entrydate, dept_id, create_time, update_time)
      VALUES (1, 'jinyong', '123456', '金庸', 1, '1.jpg', 4, '2000-01-01', 2, now(), now()),
             (2, 'zhangwuji', '123456', '张无忌', 1, '2.jpg', 2, '2015-01-01', 2, now(), now()),
             (3, 'yangxiao', '123456', '杨逍', 1, '3.jpg', 2, '2008-05-01', 2, now(), now()),
             (4, 'weiyixiao', '123456', '韦一笑', 1, '4.jpg', 2, '2007-01-01', 2, now(), now()),
             (5, 'changyuchun', '123456', '常遇春', 1, '5.jpg', 2, '2012-12-05', 2, now(), now()),
             (6, 'xiaozhao', '123456', '小昭', 2, '6.jpg', 3, '2013-09-05', 1, now(), now()),
             (7, 'jixiaofu', '123456', '纪晓芙', 2, '7.jpg', 1, '2005-08-01', 1, now(), now()),
             (8, 'zhouzhiruo', '123456', '周芷若', 2, '8.jpg', 1, '2014-11-09', 1, now(), now()),
             (9, 'dingminjun', '123456', '丁敏君', 2, '9.jpg', 1, '2011-03-11', 1, now(), now()),
             (10, 'zhaomin', '123456', '赵敏', 2, '10.jpg', 1, '2013-09-05', 1, now(), now()),
             (11, 'luzhangke', '123456', '鹿杖客', 1, '11.jpg', 5, '2007-02-01', 3, now(), now()),
             (12, 'hebiweng', '123456', '鹤笔翁', 1, '12.jpg', 5, '2008-08-18', 3, now(), now()),
             (13, 'fangdongbai', '123456', '方东白', 1, '13.jpg', 5, '2012-11-01', 3, now(), now()),
             (14, 'zhangsanfeng', '123456', '张三丰', 1, '14.jpg', 2, '2002-08-01', 2, now(), now()),
             (15, 'yulianzhou', '123456', '俞莲舟', 1, '15.jpg', 2, '2011-05-01', 2, now(), now()),
             (16, 'songyuanqiao', '123456', '宋远桥', 1, '16.jpg', 2, '2007-01-01', 2, now(), now()),
             (17, 'chenyouliang', '123456', '陈友谅', 1, '17.jpg', NULL, '2015-03-21', NULL, now(), now());
      
      
      
      

  • Cree un proyecto SpringBoot e introduzca las dependencias de inicio correspondientes (web, mybatis, mysql driver, lombok)
  • Introduzca la información de configuración de mybatis en application.properties, y prepare las clases de entidad correspondientes (clase de entidad departamento, clase de entidad empleado)
  • Programe de manera orientada a la interfaz en una arquitectura de tres niveles: mapeador, servicio (interfaz, clase de implementación), infraestructura del controlador
    • La estructura del proyecto SpringBoot final creado es la siguiente

especificación de desarrollo

Este caso se desarrolla en base al modo de separación de front-end y back-end actual más convencional

  • Especificación de desarrollo tranquilo

    • REST (Transferencia de estado representacional), transición de estado representacional, es un estilo de arquitectura de software
  • Resultados de respuesta uniforme

    • Resultado de respuesta unificada de front-end y back-end Resultado
    • El código específico es el siguiente:
      • package com.example.pojo;
        // todo 统一结果的封装类Result
        
        import lombok.AllArgsConstructor;
        import lombok.Data;
        import lombok.NoArgsConstructor;
        
        @Data
        @NoArgsConstructor
        @AllArgsConstructor
        public class Result {
            private Integer code;//响应码,1 代表成功; 0 代表失败
            private String msg;  //响应信息 描述字符串
            private Object data; //返回的数据
        
            //增删改 成功响应
            public static Result success() {
                return new Result(1, "success", null);
            }
        
            //查询 成功响应
            public static Result success(Object data) {
                return new Result(1, "success", data);
            }
        
            //失败响应
            public static Result error(String msg) {
                return new Result(0, msg, null);
            }
        }
        

Proceso de desarrollo

  • Ver el prototipo de página y aclarar los requisitos
  • Lea la documentación de la interfaz
  • Análisis de ideas
  • Desarrollo de interfaces funcionales
  • prueba de interfaz
  • Prueba de depuración conjunta de front-end y back-end

Supongo que te gusta

Origin blog.csdn.net/weixin_64939936/article/details/132146808
Recomendado
Clasificación