백엔드 36

[AWS] ec2에 domain Route53 설정하기

오늘은 Free Domain을 받고 ec2의 주소에 routing을 해보는 실습을 정리해보겠습니다. 1. free 도메인 받기 https://www.freenom.com/ Freenom - A Name for Everyone Cost Price Free Special www.freenom.com freenom에서 도매인발급 받는 방법은 생략하겠습니다. 2. Route53 생성하기 3. Freenom 사이트의 도메인에 들어가 네임 서버 등록하기 4. EC2 Public 주소 연결하기 이렇게 하면 원하는 Domain을 입력하면 우리가 생성해둔 EC2의 주소로 라우팅이 됩니다.

백엔드/AWS 2022.12.04

[AWS] 내 PC와 EC2에서 RDS 접속하기

로컬 PC에서 RDS로 접근하기 위해서 RDS의 보안 그룹에 본인 PC의 IP를 추가하는 과정, EC2 에 mySql을 다운받아 연결하는 과정 등이 있는데 이를 상세히 설명하는 시간을 갖도록 하겠습니다. 내 PC에서 RDS 접속하기 위해 보안 그룹 설정하기 1. 데이터 베이스 보안 그룹 선택하기 RDS의 보안 그룹 정보를 두고, 브라우저를 새로 열어 EC2에 사용된 보안 그룹의 그룹 ID를 복사합니다. 2. 복사된 보안 그룹 ID와 본인 IP를 RDS 보안 그룹의 인바운드로 추가 3. Database 플러그인 설치 File -> Settings 에서 Database Navigator 설치하기 4. Action에서 Database Brower 실행 맥 OS: Command + Shift + a 윈도우/ 리..

백엔드/AWS 2022.10.31

[AWS] RDS 인스턴스 생성 및 파라미터 수정

RDS는 아마존에서 제공하는 관계형 데이터 베이스입니다. 이를 생성해서 파라미터 수정하는 방법에 대해 알아보겠습니다. RDS 인스턴스 생성 및 파라미터 수정 방법 1. RDS 인스턴스 생성하기 저는 MariaDB를 사용하지만 원하는 조건에 맞춰서 고르시면 됩니다. (상세 설정은 생략) 2. 주의 사항 1. 퍼블릭 액세스 기능을 "예" 로 설정한다. (이후 보안 그룹을 통해 지정된 IP만 접근하도록 막을 예정) 2. 데이터 베이스 이름을 반드시 적는다. (데이터베이스 이름을 지정하지 않으면 DB가 생성되지 않는다.) 3. 파라미터 설정 RDS를 생성하면 파라미터를 설정해주어야합니다. 이후 생성한 파라미터를 편집합니다. 4. 파라미터 편집 time_Zone : Asia/Seoul character_set_c..

백엔드/AWS 2022.10.31

[AWS] putty를 사용해 EC2 서버에 접속하기

이번 시간에는 생성한 EC2를 putty를 사용해 연결해보겠습니다. 1. https:/www.putty.org/ 사이트 접속해서 푸티를 다운받습니다. 2. 이후 puttygen.exe를 실행해 내려받았던 pem 키를 ppk 파일로 변환합니다. 3. EC2의 탄력적 IP를 입력합니다. 4. ppk를 로드하기 위한 화면을 클릭하고, ppk를 입력한뒤 save를 통해 session을 저장합니다. 5. 연결 확인 6. 자바 설치 sudo yum install -y java-1.8.0-openjdk-devel.x86_64 7. 기타 설정 1) 타임존 변경 sudo rm /etc/localtime sudo ln -s /usr/share/zoneinfo/Asia/Seoul /etc/localtime 2) HostNa..

백엔드/AWS 2022.10.28

[AWS] EC2 생성하기

오늘은 EC2를 생성하는 과정을 사진과 함께 누구나 따라할 수 있도록 소개하는 글을 작성해보도록 하겠습니다. 1. EC2 생성하기 1. 인스턴스 시작 버튼을 클릭합니다. 2. 운영체제(AMI)와 인스턴스 유형 고르기 반드시 free tier로 해주세요 3. 키페어 설정 이후 나온 pem키를 반드시 가지고 있어야 합니다. 4. 보안그룹 설정 편집을 누른뒤 https 등의 포트를 설정해주셔야 합니다. 5. 인스턴스 생성 후 확인 이렇게 하면 인스턴스의 생성이 완료됩니다.

백엔드/AWS 2022.10.27

회원가입 로그인을 구현하면서 겪은 이슈 정리

1. 구글 로그인에서는 비밀번호를 관리할 필요가 없었는데, 회원가입을 하면 User Entity에 비밀번호를 저장할 필요가 생긴다. 이런 경우 User Entity를 따로 또 만들어야하는지에 대한 고민이 생겼다. -> 보통 개발자분들이 하나로 퉁치라고 조언을 해주셨고.. 이에 따랐다. 2. Controller에서 객체 형식으로 데이터를 받을 때 NPE가 발생하는 이슈 각각의 파라미터 name,email, password를 @RequestParam으로 받으면 문제없이 잘 동작하지만, 객체 타입으로 받으려고하니 에러가 발생하였다. 이유는 SessionUser라는 dto에 빈 생성자가 없었기 때문인데 이를 추가하여 문제를 해결하였다. 2. sns 로그인과 기존 로그인의 구분 sns 로그인은 spring sec..

백엔드 2022.10.03

[AWS] aws 용어 정리

이번 포스팅에서는 클라우드 컴퓨팅, 글로벌 인프라 등 각각의 분야를 기준으로 한 aws의 생소한 용어들에 대해 간단히 알아보겠습니다. aws 모듈1 - 기타 IAAS: infrastructure 레벨을 제공하는 서비스로, 사용자는 OS를 직접 올리고 그 상위 계층만 구성하면 되는 모델로 EC2같은 것이 이에 해당합니다. PAAS: 개발자가 응용 프로그램만 작성할 수 있도록 플랫폼 및 환경까지 제공하는 모델 SAAS: 설치할 필요 없이 클라우드를 통해 제공되는 SW로 웹 메일, MS 오피스 365 등이 있습니다. IAM: 계정관리 서비스 Amazon Direct Connect: 기존 회사의 데이터 센터 온프레미스 it 자원과 aws 클라우드 자원을 연결해 하이브리드 환경을 구축하는 서비스 aws 모듈2 -..

백엔드/AWS 2022.09.03

[Spring] JSP 대신 Thymeleaf를 사용하는 이유

클라이언트에게 동적인 웹페이지를 보여주기 위해 JSP, Thymeleaf 등 다양한 방식이 있습니다. 스프링에서는 Thymeleaf를 권장하고, 최근 개발자들 또한 jsp 대신 thymeleaf를 사용하는 추세입니다. 그렇다면 그 이유는 무엇인지 thymeleaf의 장점을 중심으로 알아보는 시간을 가져보겠습니다. Thymeleaf의 장점 1. thymeleaf가 jsp에 비해 이상한 태그도 없고, 같은 의미를 가진 속성을 가지기 때문에 더 HTML 스럽습니다. 2. JSP와 달리 프로토타입 코드를 작성할 수 있습니다. 기존에 html 코드와 타임리프 코드를 동시에 사용할 경우, 타임리프가 이를 대체할 것임이 명백하기 때문입니다. JSP는 기존의 html 코드와 동시에 코드를 작성할 수 없어 프로토타입 코..

백엔드/Spring 2022.08.22

[JPA] 값 타입 컬렉션 @ElementCollection과 @CollectionTable 활용 예시

db에는 컬렉션을 저장할 수 없습니다. 따라서 jpa의 값 타입 컬렉션은 @ElementCollection과 @CollectionTable 어노테이션을 통해 구현할 수 있습니다. 이번 글에서는 이 어노테이션들을 활용한 값 타입 컬렉션의 개념과 특징, 수정에 대해 알아보겠습니다. 목차 1. 값 타입 컬렉션의 개념과 특징 2. 값 타입 컬렉션의 수정 값 타입 컬렉션의 개념과 특징 1. 개념 값 타입을 컬렉션에 담아 사용하는 것을 의미합니다.DB에서는 따로 컬렉션을 저장할 수 없으므로, 컬렉션에 해당하는 테이블을 하나 추가하여 컬렉션을 구현합니다. 이를 위해 @ElementCollection과 @CollectionTable 어노테이션을 사용합니다. 2. 특징 ① 값 타입 컬렉션은 값 타입과 마찬가지로, 따로 ..

백엔드/JPA 2022.08.22

[JPA] 기본 값 타입과 임베디드(embedded) 타입

JPA 의 대표적인 값 타입인 기본 값 타입과 임베디드 타입에 대해 알아봅니다. 목차 1. 기본 값 타입 2. 임베디드 타입 기본 값 타입 1. 개념 int, String, Long처럼 단순히 값으로 사용되는 자바의 기본 타입입니다. 식별자가 없고 값만 있어 변경하면 추적이 불가능합니다. 예를 들어 아래의 코드에서 a 값을 변경해도, b가 추적할 수 없습니다. 코드 예제 int a = 10; int b = a; a = 20; System.out.println("a = " + a); System.out.println("b = " + b); // 여전히 10입니다. 2. 종류 ① 자바 기본 타입 (int, double) ② 래퍼 클래스 (Integer, Long) ③ String 3. 특징 ① 생명 주기를 ..

백엔드/JPA 2022.08.19
728x90