Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

coding-Benny/web-framework

Open more actions menu

Repository files navigation

web-framework

Web Framework 1

과제 1

과제 2

Medium Article 읽고 문제에 답하기(이론)

과제 3

요구 사항
  1. 지금까지 수강한 교과목을 데이터베이스에 저장
  2. 웹 페이지 접속 시 인증 유무를 체크
    • 인증되었으면 메인 페이지로 이동
    • 미인증시 자체적으로 작성한 로그인 폼을 출력하고 입력된 사용자 계정 정보는 DB에 저장
  3. 메인 페이지에는 다음과 같은 메뉴가 있음
    • 학년/학기별 이수 학점 조회
    • 년도학기취득 학점상세보기
      ............
      2020118링크
      2020218링크
      총계94
      상세보기 링크 클릭 시 학기별 수강 내역 출력
      년도학기교과목명교과구분담당교수학점
      20201정보보안전선김남윤3
      20201운영체제전선황기태3
      ..................
    • 수강 신청하기
    • 2021년 1학기에 신청할 예상 교과목을 웹 폼을 통해 입력 받고 해당 데이터에 대한 검증 작업을 실시한 후(오류시 재입력 요청) DB에 저장
    • 수강 신청 조회
    • 년도학기교과목명교과구분담당교수학점
      20211데이터베이스전선김영웅3
      20211안드로이드전지허준영3
      ..................
실행 결과
  • 로그인
  • 메인 페이지
  • 학년/학기별 이수 총 학점
  • 2020-1 수강 내역
  • 2021-1 수강신청 폼
  • 수강신청 완료
  • 2021-1 수강 신청 내역

Web Framework 2

과제 1

요구 사항 기본 소스를 수정하여 Product와 Category를 관리하는 REST API를 구현하기
실행 결과
  • Product와 Category 정보를 데이터베이스에 삽입
    $ cd eCommerce/src/main/resources
    $ mysql -u root -p
    $ use eCommerce;
    $ source data.sql;
  • Postman으로 전체 실행 결과를 확인하실 수 있습니다 :)

    Run in Postman

    Details

    스크린샷
    1. 모든 product 조회하기: GET http://localhost:8080/ecommerce/api/products
      View all products
    2. 특정 product 조회하기: GET http://localhost:8080/ecommerce/api/products/{id}
      View product
    3. product 생성하기: POST http://localhost:8080/ecommerce/api/products
      Create product
    4. product 수정하기: PUT http://localhost:8080/ecommerce/api/products/{id}
      Update product
    5. product 삭제하기: DELETE http://localhost:8080/ecommerce/api/products/{id}
      Remove product
    6. 모든 category 조회하기: GET http://localhost:8080/ecommerce/api/categories
      View all categories
    7. 특정 category 조회하기: GET http://localhost:8080/ecommerce/api/categories/{id}
      View category
    8. category 생성하기: POST http://localhost:8080/ecommerce/api/categories
      Create category
    9. category 수정하기: PUT http://localhost:8080/ecommerce/api/categories/{id}
      Update category
    10. category 삭제하기: DELETE http://localhost:8080/ecommerce/api/categories/{id}
      Remove category
    11. 부모 카테고리에 속한 자식 카테고리 조회하기: GET http://localhost:8080/ecommerce/api/categories/{parent_id}/subcategories
      View child categories
    12. 부모 카테고리와 자식 카테고리 연결하기
      1. 서브 카테고리 생성하기: POST http://localhost:8080/ecommerce/api/categories
        Create subcategory
      2. 연결하기: POST http://localhost:8080/ecommerce/api/categories/{parent_id}/subcategories/{child_id}
        Connect parent and child category
    13. 부모 카테고리에 속한 자식 카테고리 제거하기: DELETE http://localhost:8080/ecommerce/api/categories/{parent_id}/subcategories
      Remove child from parent category
    14. 카테고리에 속한 모든 product 조회하기: GET http://localhost:8080/ecommerce/api/categories/{id}/products
      View all products belongs category
    15. product를 카테고리에 넣기
      1. product 생성하기: POST http://localhost:8080/ecommerce/api/products
        Create product
      2. 카테고리에 넣기: POST http://localhost:8080/ecommerce/api/categories/{category_id}/products/{product_id}
        Put product into category
    16. product를 카테고리에서 제거하기: DELETE http://localhost:8080/ecommerce/api/categories/{category_id}/products/{product_id}
      Delete product from category

과제 2

요구 사항 제공된 기본 소스를 기반으로 Spring Boot 2.4.5에서 다음을 수행하기
  1. README.md의 6번 항목에 따라 Postman을 사용하여 Request를 보내고 Response를 보이기
  2. Charlie 계정(권한은 admin, 패스워드는 charliepw)을 data.sql에 저장하기
    • 패스워드는 BCryptPasswordEncoder를 이용하여 해쉬값을 저장
    • GET /api/products를 호출했을 때 로그인 화면이 보일 수 있도록 코드를 수정하고 브라우저에서 로그인이 성공적으로 이루어짐을 보이기
  3. GET /api/categories/1 요청을 보내고 응답 메시지(hypermedia)를 보인 다음, 이와 관련된 프로그램 소스를 지적하고 설명하기
  4. Category에서 특정 Product를 제거하는 코드 작성하고 결과 보이기
    • 응답 상태 코드(status code)는 204 No Content.로 설정
실행 결과
  • Product와 Category 및 User 정보를 데이터베이스에 삽입
    $ cd ecommerce-springboot-rest/src/main/resources
    $ mysql -u root -p
    $ use ecommerce;
    $ source data.sql;
  • Postman으로 전체 실행 결과를 확인하실 수 있습니다 :)

    Run in Postman

    Details

    스크린샷

    1.Postman으로 Request & Response

    1. 모든 product 조회하기: GET http://localhost:8080/api/products
    2. View all products

    3. 특정 product 조회하기: GET http://localhost:8080/api/products/{id}
    4. View product

    5. product 생성하기: POST http://localhost:8080/api/products
    6. Create product

    7. product 수정하기: PUT http://localhost:8080/api/products/{id}
    8. Update product

    9. product 삭제하기: DELETE http://localhost:8080/api/products/{id}
    10. Remove product

    11. 모든 category 조회하기: GET http://localhost:8080/api/categories
    12. View all categories

    13. 특정 category 조회하기: GET http://localhost:8080/api/categories/{id}
    14. View category

    15. category 생성하기: POST http://localhost:8080/api/categories
    16. Create category

    17. category 수정하기: PUT http://localhost:8080/api/categories/{id}
    18. Update category

    19. category 삭제하기: DELETE http://localhost:8080/api/categories/{id}
    20. Remove category

    21. 부모 카테고리에 속한 자식 카테고리 조회하기: GET http://localhost:8080/api/categories/{parent_id}/subcategories
    22. View subcategories

    23. 부모 카테고리와 자식 카테고리 연결하기
      1. 서브 카테고리 생성하기: POST http://localhost:8080/api/categories
      2. Create subcategory

      3. 연결하기: POST http://localhost:8080/api/categories/{parent_id}/subcategories/{child_id}
      4. Connect parent and child category

    24. 연결하기: POST http://localhost:8080/api/categories/{parent_id}/subcategories/{child_id}
    25. Connect parent and child category

    26. 부모 카테고리에 속한 자식 카테고리 제거하기: DELETE http://localhost:8080/api/categories/{parent_id}/subcategories
    27. Remove child from parent category

    28. 카테고리에 속한 모든 product 조회하기: GET http://localhost:8080/api/categories/{id}/products
    29. View all products belonging category

    30. product를 카테고리에 넣기
      1. product 생성하기: POST http://localhost:8080/api/products
      2. Create product

      3. 카테고리에 넣기: POST http://localhost:8080/api/categories/{category_id}/products/{product_id}
      4. Put product into category

    31. 2. Charlie의 계정을 data.sql에 저장하고 로그인 확인

      Charlie's login

      4. Category에서 특정 Product 제거

      Remove product from category

Morty Proxy This is a proxified and sanitized view of the page, visit original site.