본문 바로가기

728x90

분류 전체보기

(326)
~12. 19까지 중간 프로젝트 전 개인 과제 리뷰 및 개선할 점 정리 ui - server - database server - database가 백엔드 server - controller, service, repository를 포함한다 3tier - ur, application, db server의 3계층 controller : ui server : service repository : db controller 인증/인가 : 서버의 리소스를 사용하기 위한 요청/권한 부여를 컨트롤러에서 처리한다 인증/인가의 방식 - 세션, 쿠키, JWT 왜 controller일까? 인증/인가는 일종의 필터로 기능한다. 권한 부여된 사용자만 서비스에 접근 가능하다는 개념 1. controller vs restcontroller -> MVC view controller 2. 컨트롤러에서 인증/..
12. 12 ~ 12. 16/ 7주 차 WIL JWT를 다루며 Http 프로토콜에 대한 이해를 높일 수 있었지만, 아직 갈 길이 한참 더 멀다 1. 스프링 숙련 강의 완강 강의를 들으면 들을수록 드는 생각. MVC 패턴 등 여러 혁신적인 개념이 있기 전에 컴퓨터 공학은 대체 어떤 세계였던 걸까.. 그런 생각이 드는 한편, 도전의식을 불러 일으키는 이 광활한 미개척지에 왜 그렇게도 많은 회사들이 뛰어드는 지 이해할 수 있었다. 여기서 주도권을 잡는 사람과 기업이 앞으로 미래를, 어쩌면 그 이상을 이끌어 나갈 분야라는 확신을 할 수 있는 시간이었다. 반도체도 그렇고, 곧 이 세상에 본격적으로 등장할 핵융합도 그렇고. 정말 세상 빨리 변한다. 2. 프로젝트: 블로그를 위한 백엔드 서버 실습 + JWT JWT를 다루며 본격적으로 HTTP의 맛을 볼 수 있었..
개인 과제 : JWT토큰을 활용한 Http 통신 중 상태를 저장 및 유지하기 이번에 시도하는 것들 : ERD JWT를 활용하기 JPA 연관관계 설정 1. ERD (Entity Relation Diagram) 2. API 명세서 2-1 숙련 Lv1 1) 새로 구현하는 기능 기능 메서드, URL 요청 응답 회원가입 POST, /api/posts/signup { "username" : String, "password" : String, "email" : String, } success 로그인 POST, /api/posts/login { "username" : String, "password" : String } success 2) 수정하는 기능 기능 메서드, URL 요청 응답 게시물 작성 POST, /api/posts { "title":"제목", "username":"글쓴이", "co..
12. 15 스프링 숙련 강의 및 프로젝트 실습/ 자바 기초 강의 1. 스프링 숙련 강의 및 프로젝트 실습 Project MySelectShop : JPA 숙련 주차 개인과제 Lv 1 : 입문 주차의 블로그에 JWT 토큰을 활용한 기능 추가하기, ERD 설계 실습, AWS 배포 실습 2. 자바 기초 강의 명시적 형변환 : 프로그래머가 해당 값의 타입을 저징할 수 있다. ~ 데이터의 손실이 발생할 수 있다. 삼항 연산자 : 조건식 ? 참일 시 코드 수행블럭 : 거짓일 시 코드 수행블럭 전위연산자 및 후위연산자 리터럴 타입과 참조, 객체의 생성 == 연산자는 주소값을 비교합니다. '값'을 비교하고 싶다면 equals()를 사용해야한다. 배열의 생성 및 값 할당, 인덱스를 활용한 값 출력 ~ Arrays.toString(배열) 어레이 리스트 : get(), remove()를..
스프링 숙련 : Project MySelectShop (3) 출처 : 내일배움캠프 JPA 추가하는 기능 관심상품 목록 페이징 및 정렬 가능 폴더 생성 및 조회 가능 관심상품에 폴더 추가 기능 폴더 별 관심상품 조회 가능 페이징 기능 : Springframwork.data.domain Page 구현체 기능 메서드 URL 요청 응답 메인페이지 GET /api/shop index.html 키워드로 상품 검색하고 결과를 목록으로 표시 GET /api/search?query=검색어 [ { "title" : String, "link" : String, ”image” : String, "lprice" : int }, …] 관심상품 등록 POST /api/products Header Authorization : Bearer { "title" : String, "image" : ..
스프링 숙련 : Project MySelectShop (2) 출처 : 내일배움캠프 목표 인증/인가에 대해 이해 회원가입/로그인/로그아웃을 구현하고 흐름을 이해 현 프로젝트를 통해 구현한 인증/인가 기능의 한계를 이해 1. 인증/ 인가 스프링에서 인증/인가를 관리하는 라이브러리 : 스프링 시큐리티 인증이란? 해당 유저가 실제 유저인지 인증하는 것 인가란? 해당 유저가 특정 리소스에 접근이 가능한지 허가를 확인하는 것 1) 인증의 방식 : 웹 애플리케이션의 인증 -> 일반적으로 서버 - 클라이언트 구조, 필요한 경우에만 연결된다 -> Http 프로토콜 : 비연결성 무상태로 통신 비연결성 : 서버와 클라이언트가 연결되어 있지 않음 ~ 리소스 절약목적 무상태 : 서버가 클라이언트의 상태를 저장하지 않음 ~ 요청에만 응답, 그 서사는 알지 못한다. ~ 쿠키 - 세션 방식 ..
12. 14 스프링 숙련 강의/ 코딩 테스트 입문 1. 스프링 숙련 강의 Project MySelectShop - Refactoring/ Auth/ JWT 2. 코딩 테스트 입문 중복된 숫자 개수 피자 나눠먹기 (2) 3.특강 좋은 개발자가 되는 방법
스프링 숙련 : Project MySelectShop (1) 출처 : 내일배움캠프 1. 요구사항 확인 - 키워드로 상품 검색하고 그 결과를 목록으로 보여주기 - 관심상품 등록하기 - 관심상품 조회하기 - 관심상품 최저가 등록하기 2. 네이버 오픈소스 API를 활용 3. 상품 검색 API의 동작 순서 4. 프로젝트 생성 및 세팅 1) Controller, Service, Dto 패키지 및 클래스 생성 2) org.json 패키지 설치 ~ from maven repository 3) Postman으로 확인 4) UI 사전작업 : 이미지, HTML, JS, CSS 준비 5. AllInOneController로 개발해보기 : 한계점 파악 목적 1) 한 개의 클래스에 너무 많은 양의 코드가 존재 - 코드 이해가 어려움: 처음부터 끝까지 다 읽어야 코드 내용을 이해할 수 있..

728x90