Group Study (2022-2023)/Spring 입문 14

[Spring 입문] 4주차 스터디 - 스프링 시큐리티와 OAuth 2.0으로 로그인 기능 구현하기

구글 로그인 연동 clientId, clientSecret : 아래 링크에서 인증 정보를 발급받는다. Google Cloud Platform 클라우드 플랫폼에 신규 프로젝트 생성하기 새 프로젝트 생성 후, API 및 서비스 > 사용자 인증 정보 > 사용자 인증 정보 만들기 > OAuth 클라이언트 ID > OAuth 동의 화면 구성 OAuth 동의 화면에서 앱 이름에는 구글 로그인 시 사용자에게 노출될 어플리케이션 이름을 작성한다. 지원 이메일은 사용자 동의 화면에서 노출될 이메일 주소를 작성한다. 구글 API 범위는 등록할 구글 서비스에서 사용할 범위 목록으로 기본값은 email, profile, openid이다 2. 사용자 인증 정보 만들기 : API 및 서비스 > 사용자 인증정보 > 사용자 인증정보..

[Spring 입문] 3주차 스터디 - 머스테치로 화면 구성하기

템플릿 엔진은 지정된 템플릿 양식 + 데이터 ⇒ HTML 문서를 출력하는 소프트웨어 서버 템플릿 엔진 서버에서 DB/API에서 가져온 데이터를 생성된 템플릿에 넣어 HTML 문서 변환후 클라이언트에게 전달 HTML 코드에서 고정으로 쓰는 부분은 템플릿으로, 동적인 부분만 템플릿의 특정부분에 끼워넣어 동작 Thymeleaf, JSP, Freemarker 등 클라이언트 템플릿 엔진 HTML 형태로 코드 작성이 가능, 데이터를 받아서 DOM 객체에 동적으로 그려주는 과정을 담당 클라이언트에서 공통 프레임을 템플릿으로 만들고 서버에서 필요 데이터를 받은 후 이를 템플릿에 배치 Mustache, Squirrelly, 리액트나 뷰의 View 파일 등 머스테치란 무엇인가? “수많은 언어를 지원하는 가장 심플한 템플릿..

[Spring 입문] 2주차 스터디 - 스프링 부트에서 JPA로 데이터베이스 다뤄보기

목차 JPA 프로젝트에 Spring Data JPA 적용하기 Spring Data JPA 테스트 코드 작성하기 등록/수정/조회 API 만를기 JPA Auditing으로 생성시간/수정시간 자동화하기 더 알아보기 3. 스프링 부트에서 JPA로 데이터베이스 다뤄보자 3.1 JPA 소개 JPA 등장 배경 현대의 웹 애플리케이션에서 관계형 데이터베이스(RDB)는 빠질 수 없는 요소 → 객체를 관계형 데이터베이스에서 관리하는 것이 중요! → 관계형 데이터베이스가 SQL만 인식할 수 있기 때문에 모든 코드가 SQL 중심으로 → 반복적인 SQL의 생성, 수십, 수백 개의 테이블의 명령어를 반복 & 객체지향 프로그래밍 언어와의 패러다임이 달라 데이터를 저장할 수 없음 → 상속, 1:N 관계 등 다양한 객체 모델링을 데이..

[Spring 입문] 1주차 스터디 - 스프링부트 시작 / 테스트 코드 작성하기

1장 인텔리제이로 스프링 부트 시작하기 1.4 그레이들 프로젝트를 스프링부트 프로젝트로 변경 build.gradle 파일에서 해당 프로젝트의 플러그인 의존성 관리를 위한 설정 할 수 있다 buildscript { ext { springBootVersion = '2.1.7.RELEASE' } repositories { mavenCentral() jcenter() } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") } } apply plugin: 'java' apply plugin: 'eclipse' apply plugin: 'org.springframework.boot' app..