본문 바로가기

분류 전체보기

(644)
21일차 - 점프 투 스프링부트 2장 @SpringBootTest class SbbApplicationTests { @Autowired private QuestionRepository questionRepository; @Test void testJpa() { Optional oq = this.questionRepository.findById(2); assertTrue(oq.isPresent()); Question q = oq.get(); List answerList = q.getAnswerList(); assertEquals(1, answerList.size()); assertEquals("네 자동으로 생성됩니다.", answerList.get(0).getContent()); } } 위 코드를 실행하면 오류가 발생한다. 왜냐하면 Quest..
[10분 테코톡] 차리의 Stream https://youtu.be/rbm87IFpwvQ 스트림 : 데이터의 흐름 자바의 스트림 API : 데이터를 어떻게 다룰 것인가를 논하는 일종의 파이프라인 구조 : 생성 -> 가공(lazy evaluation, 루프 퓨전, 쇼트 서킷) -> 소비 lazy evaluation : 최종 연산이 들어오기 전까지 중간 연산은 실제로 실행되지 않는다. 루프 퓨전 : 개별적인 연산이 하나의 연산 과정으로 병합된다. 쇼트 서킷 : 논리 연산을 진행할 때 모든 연산을 수행하지 않고 결과가 확실할 때 나머지 연산을 수행하지 않는다. 장점 : 가독성이 좋다. 코드 변경이 유연하다. 병렬 처리를 간단하게 할 수 있다. 단점 : 컴퓨팅 비용. 내부 반복으로 인한 인지적 비용
[10분 테코톡] 루나의 Gradle https://youtu.be/ntOH2bWLWQs Gradle : Groovy를 기반으로 한 오픈소스 빌드 도구. 거의 모든 타입의 소프트웨어를 빌드할 수 있는 빌드 자동화 시스템 Groovy : JVM 상에서 실행되는 스크립트 언어. JAVA와 유사한 문법 구조를 가지며, 호환성이 아주 좋다. 빌드 : 소스 코드를 컴파일, 테스트, 정적 분석 등을 실행하여 실행 가능한 애플리케이션으로 만들어주는 과정 다양한 라이브러리의 등장으로 인한 문제점 : 라이브러리를 다운로드 및 추가하는 번거로움, 개발자들 간의 버전 관리 어려움, 다운받은 jar 파일의 보안 위험 빌드 도구 : 계속해서 늘어나는 라이브러리를 자동 추가 및 관리, 프로젝트를 진행하며 라이브러리의 버전을 쉽게 동기화. 위의 문제점을 해결! Gra..
WEB2 - OAuth 2.0 : 3. 등록 https://youtu.be/_mm5ks5aWQ4 클라이언트가 리소스 서버를 이용하기 위해서는 사전 승인을 받아야 한다. => 등록 Client ID : 식별자 Client Secret : 비밀번호 Authorized redirect URIs : Authorized code를 받을 주소
WEB2 - OAuth 2.0 : 2. 역할 https://youtu.be/vo_0PW3V5zU Resource Server : 데이터를 가지고 있는 서버(+ Authorization Server : 인증과 관련된 처리를 전담하는 서버) Resource Owner : 소유자 Client : 리소스 서버에 접속하여 정보를 가져가는 클라이언트라는 의미
WEB2 - OAuth 2.0 : 1.수업소개 https://youtu.be/hm2r6LtUbk8 OAuth를 이용해서 다른 서비스에 접근할 수 있는 권한을 획득할 수 있다. 반대로 다른 서비스에게 권한을 부여할 수도 있다. AccessToken
20일차 - 점프 투 스프링부트 데이터 초기화(베이스 데이터 추가하기) jpa: hibernate: ddl-auto: create ddl-auto: create 상태 (update로 설정하는 방법도 있지만, row를 변경하는 sql문을 실행하면 스프링부트를 재실행해도 변경된 값이 유지된다. 그러므로 create 상태에서 베이스 데이터를 추가해주는 방법을 선택한 것!) spring: profiles: active: dev 기본적으로 dev 환경임을 명시 @Configuration @Profile({"dev", "test"}) public class NotProd { @Bean public CommandLineRunner initData(...){ return args -> { ... }; } @Profile({"dev", "test"})..
[10분 테코톡] 주디의 Spring Bean https://youtu.be/3gURJvJw_T4 Spring Bean : 스프링 IoC 컨테이너가 관리하는 객체 스프링 IoC 컨테이너 : Bean을 관리하는 객체 빈과 의존성 주입 - 복잡한 의존 관계에서는 개발자가 하나하나 의존성을 주입하기 쉽지 않다. 빈과 싱글톤 - 객체를 싱글톤으로 만들면 다형성을 적용할 수 없다. 단위 테스트 수행 시 테스트 순서에 따라 결과가 달라진다. 스프링 IoC 컨테이너는 빈을 어떻게 관리할까? 객체 생성 + property 설정 -> 의존 설정 -> 초기화 -> 사용 -> 소멸 스프링 빈이 필요한 이유 : 스프링 IoC컨테이너가 특정 객체의 라이프사이클을 관리한다는 것을 명시 스프링 IoC컨테이너가 빈을 관리하는 이유 : 의존성을 자동 주입해 개발자들이 해당 의존성..