내일배움캠프 40일차 TIL - Spring Test
·
⛺스파르타코딩클럽
240613오늘의 학습    ●  1. 테스트 코드    ●  2. 단위 테스트    ●  3. Given - When - Then 패턴    ●  4. Mockito    ●  5. 자주 사용하는 애너테이션테스트 코드를 작성하는 이유테스트 코드를 작성하지 않고 배포를 진행했다가 추후에 문제가 생기면 사용자에 대한 비용과 운영환경에서의 비용이 기하급수적으로 증가하기 때문에 이러한 문제를 미연에 방지하고자 테스트 코드를 작성하는 것이다.결제 시스템과 같이 버그나 문제가 생겼을 때 비용이 많이 드는 기능들은 반드시 테스트 코드를 작성을 해줘야 한다. 단위 테스트란?작은 단위로 쪼개서 각 단위가 정확하게 동작하는지 검사하는 테스트 기법이다.쉽게 말하면 하나의 기능(메서드)에 대해 독립적으로 진행되는 가장 작은..
내일배움캠프 39일차 TIL - 소셜 로그인 API(OAuth)
·
⛺스파르타코딩클럽
240612오늘의 학습     ●  1.  카카오 소셜 로그인 API    ●  2.  API 요청하기    ●  3.  인가코드 받기    ●  4.  토큰 발급 받기    ●  5.  사용자 정보 가져오기 ( 토큰을 이용 ) 카카오 소셜 로그인 API모든 출처와 참고는 카카오 로그인 REST API 문서에서 가지고 왔습니다.(출처) API 문서 - https://developers.kakao.com/docs/latest/ko/kakaologin/rest-api Kakao Developers카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.developers.kakao.com 카카오 소셜 로그인 API 이용하기 전..
내일배움캠프 38일차 TIL - 뉴스피드 프로젝트
·
⛺스파르타코딩클럽
240611프로젝트 목차    ●  1.  API 명세서    ●  2.  전체 구현 기능    ●  3.  내가 맡은 기능    ●  3 - 1. 게시글 CRUD    ●  3 - 2. 게시글 좋아요    ●  3 - 3. CustomException 구현과 ExceptionHandler를 이용한 예외처리    ●  4. ERD    ●  5. 프로젝트 전체적인 설계 ( Figma ) 뉴스피드 프로젝트기간 : 24/06/04 ~ 24/06/10 ( 주말 / 공휴일 제외한 실제 구현 기간 4일 )인원 : 4명 1. API 명세서https://goldenrod-foxtail-d8b.notion.site/ba2533c176864fe4a6aae7ba5c4795f1?v=68d5318fbf9441578ca29b1..
내일배움캠프 37일차 TIL - 시큐리티 수정 중
·
⛺스파르타코딩클럽
240610오늘의 학습     ●  1.  시큐리티 Spring Security 프레임워크스프링 서버에서 필요한 인증 및 인가를 위해 많은 기능을 제공을 해줌으로써 개발자의 수고를 덜어준다.( 마치 스프링 프레임워크가 웹 서버에 편의를 제공해주는 느낌 ) 스프링 시큐리티는 필터 기반으로 동작을 한다. package com.sparta.springauth.config;import org.springframework.boot.autoconfigure.security.servlet.PathRequest;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import..
내일배움캠프 36일차 TIL - 스프링 빈 라이프사이클
·
⛺스파르타코딩클럽
240607오늘의 학습     ●  1.  @UniqueConstraint    ●  2.  스프링 빈의 라이프 사이클    ●  3.  PostConstruct & PreDestroy  @UniqueConstraintDB 컬럼에 unique제약 조건을 추가해주는 애너테이션이다. 묶어서 unique 제약조건 또한 걸 수 있다.해당 애너테이션은 @Table 애너테이션의 uniqueConstraints {} 바디 내부에 만들어서 이용할 수 있다.@Table(uniqueConstraints = { @UniqueConstraint(columnNames = {"user_id", "board_id"})})이렇게 여러 컬럼들을 묶어서 제약조건을 줄 수 있다. 두 개가 묶여서 unique인 것이다.  스프..
내일배움캠프 35일차 TIL - Enum
·
⛺스파르타코딩클럽
240605오늘의 학습     ●  1. Enum    ●  2. 팀 프로젝트 게시글 기능 구현 Enum( 열거타입 )자바 1.5버전부터 새롭게 추가된 기능이며, 자바에서 Enum은 한정된 값들의 집합상수들의 집합을 의미한다.Enum은 Enumeration의 약자이며, Enumeration은 열거형이라고 부르며 목록, 알림표와 같은 의미를 가지고 있다.Enum은 열거타입이며, 열거타입은 데이터 중에 한정된 값을 갖는 데이터를 열거타입이라고 한다.즉, 한정된 값은 상수를 의미하며, 한정되어 있으므로 데이터의 변경이 있어서는 안된다는 규칙이 존재한다.ex) 월, 화, 수, 목, 금, 토, 일 ( 7개 ) / 봄, 여름, 가을, 겨울 ( 4개 ) Enum 열거형열거타입은 참조 타입이므로 null값으로 초기화가..
내일배움캠프 34일차( [13일의 금요일] 뉴스피드 프로젝트 )
·
⛺스파르타코딩클럽
240604오늘의 학습     ●  1. 뉴스피드 프로젝트 설계  프로젝트 명 : 무비 피드 ( 뉴스피드 + Movie )프로젝트 설명 : 여가를 생각하는 뉴스피드  필수 구현 기능 및 APIhttps://teamsparta.notion.site/e77d170e2783462b9fc7bf4004b4374f?v=c141659ead024a82b78bf97c538da821&pvs=4 ERD 와이어 프레임 # 오늘의 회고오늘은 뉴스피드 프로젝트 설계를 했다.
내일배움캠프 33일차 TIL - Git-Hub Fork
·
⛺스파르타코딩클럽
240603오늘의 학습     ●  1. Git-Hub fork 공부    ●  2. Spring Security 복습  Git-Hub fork1. 깃허브를 이용한 프로젝트 협업 ( 팀장 )팀장 1명이 먼저1. 프로젝트 폴더를 만들어서 팀에서 정한대로 패키지 구성을 만든다. ( 아래 그림은 예시이다. )2. 깃허브에 팀 레포지토리를 만들고 해당 로컬에 만들어둔 프로젝트 폴더를 깃허브에 업로드를 시켜준다. 2. 깃허브를 이용한 프로젝트 협업 ( 팀원 )1. 팀장이 만들어둔 레포지토리를 fork를 해간다. ( 팀장 레포지토리 상단에 존재 한다. )( 포크를 해온 레포지토리는 개인 레포지토리에 저장이 된다. 개인 레포지토리에는 2번째 사진과 같이 출처가 나타난다. ) 2. 포크를 해온 깃허브 레포지토리를 개인..
내일배움캠프 32일차 TIL - JDBC & JPA
·
⛺스파르타코딩클럽
240531오늘의 학습     ●  1. JDBC & JPA 관계    ●  1. JPA   JDBC와 JPA 관계 JDBC( Java Database Connectivity )JDBC는 자바에서 다양한 데이터 베이스에 접속 및 쿼리 실행, 결과 반환을 하기 위한 자바의 API이다. 여기서 핵심은 JDBC의 C에 해당하는 Connectivity이다. 위와같이 연결을 해주는 인터페이스 라는 것이다. 또한 JDBC는 하나의 인터페이스로써 이것을 구현하고 있는 다양한 데이터베이스들이 존재하며, 다양한 데이터베이스들은 각자가 본인들의 데이터베이스에 접근 할 수 있게끔 Oracle Driver, MySql Driver 등등을 만들어서 제공을 해준다.결국 인터페이스를 구현한 클래스는 Oracle Driver, My..
내일배움캠프 31일차 TIL - 책 리뷰 및 개인 과제 질문
·
⛺스파르타코딩클럽
240530오늘의 학습     ●  1. 책 리뷰    ●  2. 주특기 과제 질문에 답변 1. 자바의 객체지향 및 스프링 책 리뷰캠프에서 공부를하며 튜터님을 통해 알게된 책 한권을 리뷰를 해보겠다. ( 바로 아래의 책이다. )1. 책을 읽게 된 계기이책을 추천 받았을 때 들은 얘기는 책의 내용이 자바의 메모리, 객체지향 등등 쉬운 주제를 다루는게 아닌데 불과하고 어려운 주제를 쉽게 풀어서 설명을 하기에 이해하기가 쉽다는 얘기를 들었다. 평소에 관심이 많았던 JAVA의 메모리 관리와 객체지향 그리고 스프링에 대해서 이론과 원리가 궁금했었는데 마침 이 책을 알게되었고 읽게 되었다. 2. 책 소개이 책은 2015년도 4월에 나온 책으로써 현재랑 비교하면 생각보다 오래된 책이다. 오래된 책이지만 자바의 근간이..