跳至主要內容
用户中心4-部署

用户中心

多环境

本地开发:localhost{127.0.0.1}

多环境:同一套项目代码在不同的阶段需要根据实际情况 来调整配置 并且数部署 到不同的机器上

为什么需要?

  1. 每个环境互不影响
  2. 为了区分不同的阶段:开发/测试
  3. 对项目进行优化:
    1. 本地日志
    2. 精简依赖,节省项目体积,
    3. 参数调整,比如JVM参数

多环境 分类:

  1. 本地环境(自己的电脑)localhost
  2. 开发环境(远程开发)连同一台机器
  3. 测试环境 开发/测试/产品 ,性能测试/单元测试/功能测试/系统集成测试,独立的数据库/独立的服务器
  4. 预发布环境,和正式环境 一致,正式数据库
  5. 正式环境,保证代码是“完美的”
  6. 沙箱环境:为了做实验

全民制作人ikun大约 4 分钟项目实战用户中心项目实战用户中心
用户中心5-持续优化

用户中心

部署上面的优化:

这些把前端也通过打包的方式进行构建,每次修改页面之后都要重新打包构建一个镜像,不方便动态的修改页面

考虑使用数据卷挂载的方式来启动docker

docker run -p 80:80 -d --name user-center-frontend \
	-v /www/wwwroot/user-center/dist:/usr/share/nginx/html \
	-v /www/wwwroot/user-center/nginx.conf:/etc/nginx/nginx.conf \
	nginx:latest

全民制作人ikun大约 1 分钟项目实战用户中心项目实战用户中心
用户中心3

用户中心

用户注销

后端代码:

    @PostMapping("/logout")
    public Integer logout(HttpServletRequest request) {
        if (request == null) {
            return null;
        }
        return userService.logout(request);
    }

    @Override
    public Integer logout(HttpServletRequest request) {
        request.getSession().removeAttribute(UserConstant.USER_LOGIN_STATE);
        return 1;
    }

全民制作人ikun大约 3 分钟项目实战用户中心项目实战用户中心
用户中心2

用户中心

登录逻辑

接受参数:用户账户,密码

接受类型:POST

请求体:JSON格式的数据

请求参数很长时不建议用get

返回值:用户信息(脱敏)

具体逻辑:

  1. 校验用户的账户,密码,是否符合要求
    1. 账户不少于四位
    2. 密码不少于四位
    3. 账户不能重复
    4. 账户不包含特殊字符
    5. 其他的校验
  2. 校验密码是否输入正确 ,要和数据库中的密码进行对比
  3. 记录用户的登录态(Session),存到服务器上,(用后端SpringBoot 框架封装的服务器tomcat去记录)
  4. 返回用户信息(脱敏)

全民制作人ikun大约 8 分钟项目实战用户中心项目实战用户中心
用户中心1

用户中心

目的

完整了解做项目的思路,接触一些企业级的开发技术

企业做项目流程

需求分析=> 设计(概要设计,详细设计)=> 技术选型 =>初始化 /引入需要的技术 => 写小Demo =>写 代码(实验 业务逻辑) => 测试(单元测试) => 代码提交 /代码评审 => 部署发布

需求分析

  1. 登录/注册
  2. 用户管理(仅管理员可见)对用户对查询或者修改
  3. 用户校验

技术选型


全民制作人ikun大约 5 分钟项目实战用户中心项目实战用户中心