Code Monkey home page Code Monkey logo

order66's Introduction

order66's People

Contributors

f-lab-bot avatar herryboro avatar

Watchers

 avatar

order66's Issues

Spring security를 이용한 회원가입 로그인 기능 구현(1. session 이용, 2. jwt 이용)

[회원가입, 로그인 api 개발]
 크게 2가지 방법론으로 개발했습니다. (session vs jwt)

Description

  • Srping security와 session의 특성을 이용한 개발
    • 회원가입( POST /client/signUp )
    • 로그인 ( POST /auth )
    • 로그아웃 ( GET /logout )

  • jwt를 이용한 개발
    • 로그인 ( POST /jwtApi/login)

Result

  • Srping security & session

    • 회원가입( POST /client/signUp )

      • 정상 회원 가입
        ※ postman

        ※ client table

      • 각 예외들
        ※ 중복 아이디 입력

        ※ 비밀번호, 비밀번호 확인 불일치

        ※ 비밀번호 입력 조건 예외( 8자 이상의 문자 및 특수 문자의 조합 )

    • 로그인( POST /auth )

      • 로그인 성공 후 main 페이지로 redirect

      • 로그인 후 main 페이지 정상 접근

    • 로그인( GET /logout )

      • 로그인 없이 main 페이지 접근


  • Srping security & jwt

    • 로그인 ( POST /jwtApi/login)
      • api 호출시 token 발행
      • 발급한 token으로 메인 페이지 접근
      • 시간 초과로 만료된 token으로 메인 페이지 접근

Store 메뉴(메뉴 그룹, 메뉴, 옵션) 등록, 수정, 삭제 기능 개발

Description

  • 메뉴 그룹 관리
    • 메뉴 그룹을 등록하고 업데이트 하는 기능 개발
    • 추가(/addMenuGroup), 업데이트(/updateMenuGroup), 삭제(/deleteMenuGroup)
    • 최초 등록인지, 이미 존재하는 그룹인지 확인 후 로직에 따라 메뉴 그룹에 순서를 지정.

  • 메뉴 관리
    • 메뉴를 등록하고 업데이트 하는 기능 개발
    • 추가(/addMenu), 업데이트(/updateMenu), 삭제(/deleteMenu)
    • 최초 등록인지, 이미 존재하는 메뉴인지 확인 후 로직에 따라 메뉴 순서를 지정.
    • 각 메뉴에 대한 옵션 정보도 함께 등록.
      • 옵션은 존재할 수도, 없을 수도 있음.
      • 하나일 수도, 여러개(list)일 수도 있음.

Result

  • 메뉴 그룹 등록
    • case1) 최초 메뉴 그룹 등록인 경우

      ※ postman
      메뉴 그룹 등록(최초)
      ※ DB
      메뉴 그룹 등록(최초)_db
      (최초 등록이므로 order가 1로 set)

    • case2) 이미 등록되어 있는 메뉴 그룹 정보가 있는 경우

      ※ postman
      메뉴 그룹 등록(최초X)
      ※ DB
      메뉴 그룹 등록(최초X)_db
      (최초 등록이 아닌 경우)


  • 메뉴 등록

    ※ postman
    메뉴 등록

    ※ DB
    메뉴 등록 DB

    ※ (메뉴에 옵션이 있는 경우)
    메뉴옵션 DB


  • 메뉴 그룹 정보 수정

    ※ postman
    메뉴 그룹 정보 수정

    ※ DB
    메뉴 그룹 정보 수정 db


  • 메뉴 정보 수정

    ※ Front 화면

    ※ postman
    메뉴 정보 수정 postman

    ※ DB_수정된 정보
    db 수정

    • 메뉴 수정 UI에서 메뉴에 이미 존재하는 옵션에 대한 정보를 수정하면 정보만 수정이 됨.
    • 만약 존재하지 않는 옵션을 UI상에서 새로 추가한 다음 저장하면 -> 새로운 옵션이 등록이 됨.

  • 기타 삭제 기능 개발

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.