본문 바로가기

Team Project64

TDP 3차 Starting Assignment (21.11.19 ~ 21.12.09) 개발해야할 기능들 Start (Flask → Spring) [x] 서버사이드 랜더링 배제 [x] Til [x] User [x] Like [x] Comment [x] Flask → Spring으로 변환 [x] sign.html [x] home.html [x] create.html [x] my_page.html [x] mytil_page.html [x] til_board.html [x] til_board_detail.html [x] detail.html 기능 구현 [x] TIL Board - List private / public [x] TIL Board - Pagination [x] Create - Tag [x] 카카오 로그인 [x] Notification (카카오 알림 API를 연결) [x] 새로운 글 .. 2021. 12. 22.
TIL(41) 21-11-20 : 조회수, comment 기능 구현 (Flask) Facts ✅ 메모장 사이트 조회수 기능 구현 [flask] ✅ 메모장 사이트 Comment 기능 구현 [flask] 조회수 기능 구현 게시글을 클릭할 때마다, 서버에서 게시글 컬럼의 read_count 필드값을 증가시키게 구현했다. function readArticle(idx) { $.ajax({ type: "PUT", url: `/article/${idx}`, data: {}, success: function (response) { console.log(response['article']) let title = response['article']['title'] let content = response['article']['content'] $('#modal-title').html(title); $(.. 2021. 11. 20.
TIL(40) 21-11-17 : @Transactional / 스프링 Controller가 Client로 부터 파라미터를 받는 방법 / Lambda와 Stream Facts ✅ 메모장 사이트 CRUD 기능 구현 Findings ✏️ @Transactional 스프링에서 트랜잭션 처리를 하려면, 트랜잭션이 필요한 클래스 혹은 메서드에 @Transactional 어노테이션을 달아주면 된다. @Transactional이 붙은 메서드는 메서드가 포함하고 있는 작업 중에 하나라도 실패할 경우 전체 작업을 취소한다. 클래스, 메서드 모두에 @Transactional 어노테이션을 붙이면 메서드 레벨의 @Transactional 선언이 우선 적용된다. // update @Transactional public Til updateTil(Long id, TilRequestDto tilRequestDto) { Til til = tilRepository.findById(id).orEls.. 2021. 11. 17.
TIL(39) 21-11-15 : 도커를 사용해서 컨테이너를 구성해보기 🧭 도커 컨테이너 구성 및 활용 1. 도커, 컨테이너에 대한 이해 2. MariaDB를 컨테이너로 구성 및 Python Flask 연동 3. docker compose를 통해 여러개의 컨테이너를 효과적으로 관리 1️⃣ 도커, 컨테이너에 대한 이해 ✏️ Container (1) Definition ✔️ Container : 하나의 컴퓨팅에서 다른 컴퓨팅 환경으로 빠르고 안정적으로 실행되도록 코드와 모든 dependencies를 패키징하는 소프트웨어 표준 단위이다. EX) 코드, 런타임, 시스템 도구, 시스템 라이브러리 및 설정을 패키징한다. Container vs VM 컨테이너 기술을 이해하려면, VM과 비교해보면 쉽다. 컨테이너 = 각각의 프로세스들을 격리시키는 기술 (가상머신 달리 격리된 프로세스들을 .. 2021. 11. 15.
TIL(38) 21-11-10 : Spring Security + OAuth2 💫 Facts ✅ Spring CRUD API, Auth API(인증 및 인가)의 데이터 흐름 파악 ✅ 토큰 이해 💫 Findings 🧩 Token 토큰 기반 인증 : 인증받은 사용자들에게 토큰을 발급하고, 서버에 요청을 할 때 헤더에 토큰을 함께 보내 유효성을 검사하는 방식 👉🏻 세션과 달리 토큰 기반 인증방식은 다양한 도메인에 대응할 수 있고, 서버의 메모리 부담을 줄일 수 있다. 또한, 서버가 여러 대를 두고 사이트를 운영할 때, 세션 유지가 제대로 안될 수 있지만, 토큰 인가 방식으로는 서버에서 토큰을 발급하고 보내주고 이를 서버에 저장하지 않기에 서버가 여러 대여도 상관없다. 🤯 하지만, 치명적인 단점이 있다. 이미 발급된 토큰에 대해서는 돌이킬 수 없다. 세션/쿠키의 경우 만일 쿠키가 악의적으.. 2021. 11. 10.
TIL(37) 21-11-09 : Object Oriented Programming 💫 Facts ✅ 객체지향에 대해 나만의 언어로 정립하기 ✅ 쿠키와 세션 이해 ✅ 스프링 시큐리티를 통해 로그인, 회원가입 기능 구현 💫 Findings 🧩 객체지향 (1) 클래스, 인스턴스, 메소드 ✏️ 클래스 : 표현하고자 하는 대상의 공통 속성을 한 군데에 정의해 놓은 것이다. 즉, 객체의 속성을 정의해 놓은 것을 말한다. ✏️ 인스턴스 : 어떠한 클래스로부터 만들어진 객체를 그 클래스의 인스턴스라고 한다. ✏️ 메소드 : 어떤 작업을 수행하는 코드를 하나로 묶어 놓은 것을 말한다. (2) 생성자 ✏️ 생성자 : 인스턴스가 생성될 때 사용되는 '인스턴스 초기화 메소드'다. 생성자를 이용해서 인스턴스가 생성될 때 수행할 동작을 코드로 짤 수 있다. 대표적으로 인스턴스 변수를 초기화 하는 용도로 사용한.. 2021. 11. 9.