Java/SpringBoot
![[SpringBoot] AWS 데이터베이스 환경 구축 - AWS RDS (MariaDB)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FO8aUc%2FbtraNyFLec2%2FAAAAAAAAAAAAAAAAAAAAAFhpu22Ik9CAInxxs2y5hhQD9Zh-_obm_vnc2jz9kdCE%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3DATTYcMwlcamSgY%252Bpi9%252BJrO7rUyQ%253D)
[SpringBoot] AWS 데이터베이스 환경 구축 - AWS RDS (MariaDB)
스프링부트 실습 Chapter07 AWS에 데이터베이스 환경을 만들어보자 - AWS RDS 이동욱 作 '스프링 부트와 AWS로 혼자 구현하는 웹 서비스' 🔎 RDS(Relational Database Service) AWS에서 지원하는 클라우드 기반 관계형 데이터베이스이다. 하드웨어 프로비저닝, 데이터베이스 설정, 패치 및 백업과 같이 잦은 운영 작업을 자동화하여 개발자가 개발에 집중할 수 있게 지원하는 서비스이다. 👉 RDS 인스턴스 생성 검색창에 rds 입력 후 RDS 대시보드에서 데이터베이스 생성 버튼 클릭 ✅ DBMS 선택 표준 생성 - MariaDB 🔎 왜 MariaDB? 가격 RDS의 가격은 라이센스 비용 영향을 받는다. 상용 데이터베이스인 오라클, MSSQL이 오픈소스인 MySQL, Mari..
![[SpringBoot] AWS 서버 환경 - AWS EC2 설정하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FpQf26%2FbtraInrM8gb%2FAAAAAAAAAAAAAAAAAAAAAOrhB3u-SpyGSipvIIIC0zgyXEzsG7X507DXEo9Ze62c%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3Dw6DaY9%252B4WZp0uMcuDKQautWzOkc%253D)
[SpringBoot] AWS 서버 환경 - AWS EC2 설정하기
스프링부트 실습 Chapter06 AWS 서버 환경을 만들어보자 - AWS EC2 이동욱 作 '스프링 부트와 AWS로 혼자 구현하는 웹 서비스' 👉 AWS 회원가입 이메일 주소, 암호, AWS 계정 이름 작성 후 계속 클릭 AWS를 어떻게 사용하실 계획이신가요?에는 개인을 선택하고 나머지 입력사항들을 채워준다. 여기서 주소는 영문주소를 입력해야한다. 결제 정보란에는 Master / Visa 카드의 정보를 등록해야한다. 해당 카드에는 최소 1달러가 결제 가능해야 한다. 이는 유효한 카드인지 확인하는 것으로 실제 청구되지는 않는다. 비밀번호랑 생년월일 입력하고 다음 클릭 핸드픈 인증을 진행한다. 대한민국과 휴대폰 번호를 입력하고 SMS 전송 핸드폰으로 발송된 코드를 입력해준다. 무료로 사용할 수 있는 기본 ..
![[SpringBoot] 스프링부트 구글 로그인 연동하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FE8J2W%2FbtraGFLQlws%2FAAAAAAAAAAAAAAAAAAAAABsDrF0ayuBahBXu9-kdlKxjhZ08Y3fSrQHqEfMpSgZQ%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3D9MvS07AeNgWWBJcaoQW3sc4hyQ0%253D)
[SpringBoot] 스프링부트 구글 로그인 연동하기
스프링부트 실습 Chapter05 스프링 시큐리티와 OAuth 2.0으로 로그인 기능 구현하기 이동욱 作 '스프링 부트와 AWS로 혼자 구현하는 웹 서비스' 🔎 스프링 시큐리티와 스프링 시큐리티 Oauth2 클라이언트 Oauth 인터넷 사용자들이 비밀번호를 제공하지 않고 다른 웹사이트 상의 자신들의 정보에 대해 웹 사이트나 애플리케이션의 접근 권한을 할 수 있는 공통적인 수단 출처 | https://ko.wikipedia.org/wiki/OAuth 소셜 로그인을 사용하는 이유 로그인을 직접 구현 시 아래와 같은 사항들을 전부 구현해야한다. 로그인 시 보안, 회원가입 시 이메일 혹은 전화번호 인증, 비밀번호 찾기, 변경 등.. OAuth 로그인 구현 시 앞선 목록의 것들을 모두 구글, 페이스북, 네이버에 ..
![[SpringBoot] 템플릿 엔진 머스테치로 화면 구성하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2F0oUiZ%2FbtrastZlv2U%2FAAAAAAAAAAAAAAAAAAAAAKxEUaJ0cv4FbqxORZnSjFZWhM1vw-zq4A1jxIbLMm9f%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3DwtQhwnJBtmfNeORDjjhwvw6Olp8%253D)
[SpringBoot] 템플릿 엔진 머스테치로 화면 구성하기
스프링부트 실습 Chapter04 머스테치로 화면 구성하기 이동욱 作 '스프링 부트와 AWS로 혼자 구현하는 웹 서비스' 🔎 서버 템플릿 엔진과 클라이언트 템플릿 엔진의 차이 템플릿 엔진 지정된 템플릿 양식과 데이터가 합쳐져 HTML문서를 출력하는 소프트웨어 서버 템플릿 엔진 - 서버에서 구동 서버 템플릿 엔진을 이용한 화면 생성 - 서버에서 Java 코드로 문자열을 만든 뒤 이 문자열을 HTML로 변환하여 브라우저로 전달 ex) JSP, Freemarker 클라이언트 템플릿 엔진 클라이언트 템플릿 엔진을 이용한 화면 생성 - 서버에서 Json 혹은 Xml 형식의 데이터만 전달하고 클라이언트에서 조립 ex) 리액트, 뷰 자바스크립트는 브라우저 위에서 작동한다. 만약 서버 템플릿 엔진을 사용하게 된다면? ..
![[SpringBoot] 스프링부트 JPA로 데이터베이스 다루기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2Fdef9bj%2FbtranWnKpC9%2FAAAAAAAAAAAAAAAAAAAAANRxaMV6fh_-0S8dLglHy6rUDMltj_DV_9PPlOb23wc3%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3DwrwJiiPIlhdrzDfaiUPZU2D%252FW9o%253D)
[SpringBoot] 스프링부트 JPA로 데이터베이스 다루기
스프링부트 실습 Chapter03 스프링 부트에서 JPA로 데이터베이스 다뤄보자 이동욱 作 '스프링 부트와 AWS로 혼자 구현하는 웹 서비스' 🔎 JPA / Hibernate / Spring Data Jpa의 관계 JPA 소개 JAP 등장 배경 관계형 데이터베이스(Oracle, Mysql..)는 웹 어플리케이션에서 빠질 수 없는 요소가 되었다. 이에 따라 객체를 관계형 데이터 베이스에서 관리하는 것이 중요해졌다. 이러한 관계형 데이터베이스는 SQL만 인식할 수 있기 때문에 각 테이블마다 CRUD SQL을 매번 생성해야 하고 방대한 테이블의 수 만큼 SQL을 만들고 유지보수를 해야하는 문제점이 생긴다. 또 다른 문제점으로 패러다임 불일치를 들 수 있다. 관계형 데이터베이스는 데이터를 어떻게 저장할 지에 초..
![[SpringBoot] Spring Data JPA 쿼리 로그 설정](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FpuhZH%2FbtraqSdrnVH%2FAAAAAAAAAAAAAAAAAAAAAIl7mTC6TdPAUswXLVjsxxFT8q56gopClmpo2B39hDnp%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3D08iTEtAvu%252BgJIUk94GMa65HbwT4%253D)
[SpringBoot] Spring Data JPA 쿼리 로그 설정
src/main/resources 디렉토리 아래에 application.properties 파일에 작성 spring.jpa.show-sql=true - 콘솔에서 쿼리 로그를 확인할 수 있다. spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect - 출력되는 쿼리 로그를 MySQL 버전으로 변경 콘솔창에서 쿼리문이 실행되는 걸 볼 수 있다. 이동욱 作 '스프링 부트와 AWS로 혼자 구현하는 웹 서비스' Chapter03 스프링 부트에서 JPA로 데이터베이스 다뤄보자
![[SpringBoot] 스프링부트 테스트 코드 작성하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2Fqa4V3%2FbtranET4qvl%2FAAAAAAAAAAAAAAAAAAAAALYNMOY2l5h5yAp17ZR0JqnvaGL44EaRguUYJmql--pt%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1756652399%26allow_ip%3D%26allow_referer%3D%26signature%3DpGo1kpzMke4GCUUipgkjNzjOqCs%253D)
[SpringBoot] 스프링부트 테스트 코드 작성하기
스프링부트 실습 Chapter02 스프링 부트에서 테스트 코드를 작성하자 이동욱 作 '스프링 부트와 AWS로 혼자 구현하는 웹 서비스' 🔎 TDD와 단위 테스트란? 테스트 코드 TDD : 테스트가 주도하는 개발을 이야기한다. 단위 테스트 : TDD의 첫번째 단계인 기능 단위의 테스트 코드를 작성하는 것을 이야기한다. 테스트 코드를 작성하는 이유 코드 작성 후 톰캣 실행해서 결과 확인하는 개발 방식은 시간이 오래걸리고 매우 번거로움. 테스트 코드를 사용하게 되면 빠른 피드백과 자동검증이 가능하고 개발자가 만든 기능을 안전하게 보호해준다. Hello Controller 테스트 코드 작성하기 import org.springframework.boot.SpringApplication; import org.spri..