반응형

오늘 목표는 개발환경 설정 후 프로젝트 셋팅까지 진행하볼 예정이다.

1. 파이썬 설치

개발환경 설정? 머 없다. 파이썬으로 하기로 했으니까 파이썬 설치해주고 파이썬 IDE를 설치해주면 끝~ 먼저 파이썬을 설치해주자, 나는 파이썬 3.8버전을 사용하는데 이 글을 쓰는 시점에 확인해보니 벌써 3.9.2가 나왔더라 ㅎㅎ 머 이 프로젝트를 진행하는데 큰 차이는 없으니 그냥 받으면 된다.

비전공자들은 궁금할 수가 있다. 파이썬 설치? 그게 모야!!! 어 일단. 우리가 사용할 언어는 파이썬이다. 언어라는건 규칙이 존재하고 사용할 수 있는 단어들도 있을 것이다. 이런 언어를 내 컴퓨터에서 사용할 수 있도록 하려면 이 언어를 내 컴퓨터에 설치해줘야 한다.

우리가 영어를 배우려면, 매일 학원에 가서 영어공부하고, 안되면 유학가서 배워와야하지만 컴퓨터는 그냥 그 언어를 설치하기만 하면, 컴퓨터는 그 언어를 사용할 수 있다. 머 이정도 생각하면 된다.

https://www.python.org/downloads/

 

Download Python

The official home of the Python Programming Language

www.python.org

저 위 링크 들어가서 저 Download Python 3.9.2를 눌러주고 실행해서 설치해주자.

설치가 끝나면 시작버튼-검색-cmd 검색 후 엔터를 눌러 cmd창을 띄운 뒤 python이라고 입력해보자. 그 후 빨간 박스처럼 먼가 알아들었다는 것처럼 내용이 나오면 정상적으로 설치된 것이다.

2. PyCharm 설치

이번엔 PyCharm을 설치해야한다. 보통 파이참이라고 읽는다. 이건 멀까? IDE 라고 한다. Integrated Development Environment 라고하며 한국말로는 통합 개발 환경이다. 머 어렵게 들리는데, 어떤 컴퓨터 언어로 프로그램개발을 하기위해 코딩, 디버깅, 컴파일 등 여러 기능을 가진 프로그램이라고 알면 된다.

쉽게 말해서 우리가 요리를 하기위해서 머 칼도필요하고 오븐도 필요하고 가스도 나와야하고, 먹으려면 그릇도 있어야하고, 맛도 보려면 국자도 있어야하고 하듯이. 이런 요리라는 행위를 하는데 필요한 모든 기능이있는 곳이 주방이듯, 우리가 프로그램 개발하는데 필요한 모든기능이 있는 프로그램을 IDE라고 부르는 것이다.

보통 Java 에서는 이클립스, 인텔리제이를 많이 쓰고, C는 Visual Studio, 파이썬은 파이참을 많이 쓰는것 같다. 이처럼 언어별로 주력으로 쓰는 IDE들이 있으니 알아보고 쓰면 된다.

https://www.jetbrains.com/ko-kr/pycharm/

 

PyCharm: JetBrains가 만든 전문 개발자용 Python IDE

지능적인 코드 완성, 즉각적인 오류 검사, 빠른 수정 등 다양한 기능을 갖춘 Python 및 Django IDE입니다.

www.jetbrains.com

위 링크에 접속해서 가운데에 있는 다운로드버튼을 눌러 설치해주고 실행해주자.

프로젝트 생성

자 실행하면 위처럼 창이 나올꺼다. New Project를 눌러주자.

빨간 박스에 프로젝트 이름을 써주자, 저 프로젝트 이름은 그냥 진짜 말그대로 내 프로젝트의 이름이다. 저기 적는 글자가 프로그램 실행했을때 나오는 글자가 아니니.. 맘편하게 써도 된다.

그리고나서 다른 설정 손댈 꺼 없이 Create를 눌러주자.

그럼 virtual environment 생성이라고 한 몇십초 정도 기다린다. 머 사양에따라서 몇 분이 될 수도 있다. 가상 환경이라고 해서 파이썬은 프로젝트마다 하나의 환경을 갖는다.

그 환경마다, 설치한 라이브러리 버전이 다를 수도 있고, 설치된 환경이 제각각이다. 여러 가상환경을 준비해놓고, 원하는 환경이랑 마운트해서 실행도 가능하다. 머 이런 특성을 가지고 있다는 것만 알고 넘어가면 될 것 같다.

자 위 화면처럼 뜨면 프로젝트 생성 완료다. 간단하게 화면 구성을 보자. 1번에는 리소스 파일들이 있다. 쌩으로 새로 만든 프로젝트이기 때문에 머 복잡한게 많이 없다 ㅎㅎ 1번 박스를 보면 기본적인 코드가 적혀있는 main.py파일이 있고 venv 폴더가 있다. 이 venv폴더는 아까 위해서 말했던 가상환경 폴더이며, 앞으로 라이브러리를 설치하거나 하면 저 폴더에 설치된다고 알고 있음 된다. 머...라이브러리를 뜯어볼 것이 아니면은 저 폴더는 열어볼 일이 없다.

우린 그저 main.py만 보면 된다 . 그 main.py에 대한 코드는 2번 화면에 나와있다.

자 코드를 보면 간단하다. print_hi라는 함수가 정의되어 있고, 아래 if 문에서 __name__이 __main__이면 아까 정의했던 print_hi라는 함수를 작동시킨다. 그 함수의 인자로는 PyChamr이라는 문자열을 줬고, 다시 함수정의를 보면 그 받은 인자를 Hi와 함께 출력시키는 구조이다.

 

쉬프트+F10을 눌러서 한번 실행해보자. 하단에 보면 Hi, PyCharm을 확인 할 수 있다. 다음편에서는 자동매매 시뮬레이터 GUI화면을 만들어보자.

반응형
반응형

 

https://extsdd.tistory.com/104

 

[Maria DB] 마리아 DB 접속 / HeidiSQL 세션 연결

https://extsdd.tistory.com/103 [Maria DB] 마리아 DB 10.5 다운 및 설치 / 서비스 확인 / 스프링 Spring 스프링 프로젝트에 Maria DB를 사용하기 위해서 설치해보자! Maria DB는 MYSQL DB개발자들이 나와서 만든..

extsdd.tistory.com

  자 저번시간에 우리가 만든 DB에 접속을 했으니 이제 데이터 통을 생성해 줘야한다. DB 용어로는 스키마 라고하는데 우리가 알아들어먹을 수준으로 말하면 보통 DB통이라고 한다..ㅋㅋ DB통 새로 만들어!~ ㅋㅋㅋ ... 보통 이랬던거 같은데 뭐 프로젝트단위라고 보면 된다.

 

  내 DB 서버가 있고, 꼭 1개의 DB서버에서 1개의 프로젝트를 돌리란 법은 없다. 여러가지 DB통을 만들어 놓을 수가 있어서, 만약에 내가 유튜브 서비스와, 쿠팡 서비스를 돌리고싶다! 하지만 하나의 DB서버에 돌리고 싶다! 라고 하면 DB통을 2개 만들어 주면 된다. 다시 전문용어로 YOUTUBE 스키마와, COUPANG 스키마를 만들어 주면된다. 이제 좀 이해가 됐나..!? 그냥 프로젝트 단위라고 생각하면 된다.

 

  그럼 우리는 프로젝트 CP SERVICE이기 때문에 CP_SERVICE_DB 스키마(DB통)을 만들어보자!

1. 데이터베이스 (Database) 생성

 

 

 

  만들 세션선택후 오른쪽마우스 클릭하여 새로생성(2) 버튼을 클릭! 그리고 데이터베이스(3)을 눌러주자! 마리아 DB에선 스키마 보단 걍 데이터베이스라고 부르나보다.

 

 

CREATE DATABASE `cp_service_DB`

 

  자 데이터 베이스 이름을 지정하자! 보니까 대문자로 써도 어차피 다 소문자로 치환된다. 정했으면 확인!

 

 

  오웅 씌엣! 만들어졌당! 이제 프로젝트 단위의 데이터베이스(DB통)을 생성했으니 이제 이 프로젝트에서 사용할 테이블들을 추가해보자 방법은 비슷하다.

 

2. 테이블 Table 생성

 

 

 

  테이블을 만들 데이터베이스를 오른쪽클릭하고(1) 새로생성(2)버튼을 누른뒤 테이블(3)버튼을 눌러주자!

https://extsdd.tistory.com/102

 

[Spring/eGov ] #6 웹 서비스 만들기 2 / 요청 URL 파라미터 가져오기 / Debug 방법 / 디버깅 하는법 / @Model

 

extsdd.tistory.com

  일단 우리는 이 프로젝트 기준으로 DB를 만들 것이기 때문에 아래와 같은 테이블을 생성할 것이다.

 

 

 

  자 PRD_MST 테이블부터 생성해보자!

3. PRD_ MST

 

 

 

 

  1. 테이블 이름을 지정해주자

  2. 추가버튼을 눌러서 4개의 속성을 다 추가해준다.

  3. 추가한 속성들의 이름을 지정하고

  4. 데이터 유형을 지정한다.

  5. 길이를 정해준다! URL_STR에는 URL이 길게 들어갈 것임으로 넉넉히 300자를 두고, DISC_STR은 설명이니 50정도. 그리고 USE_YN은 Y혹은 N값만 다룰테니 2정도를 준다

  6. NULL허용을 체크하면 저기 속성은 안넣어도 되는 속성이 된다. DISC_STR은 해당 값에대한 설명인데 꼭 없어도 되니 NULL허용을 해주자, 나머지 3개 속성값은 꼭 NULL이 아닌 실제 값을 필요로 하게 된다. 만약 NULL을 넣으려고 시도하면 제약조건에 위배되서 삽입이 되지 않게 된다.

  7. SEQ_NO는 데이터를 추가할때마다 1~쭈르륵 올라가면 되니 더블클릭을 눌러서 AUTO_INCREMENT를 선택해주고 DISC_STR은 NULL허용을 해놨기 때문에 설정에서 최초값을 NULL로 주도록 하자

 

  다 됐으면 저장 버튼을 눌러주자!!!

CREATE TABLE `PRD_MST` (
	`SEQ_NO` INT NOT NULL AUTO_INCREMENT COMMENT '고유 번호',
	`URL_STR` VARCHAR(300) NOT NULL COMMENT '목적지 URL',
	`DISC_STR` VARCHAR(50) NULL DEFAULT NULL COMMENT '목적지 설명',
	`USE_YN` VARCHAR(2) NOT NULL COMMENT '사용 유무',
	PRIMARY KEY (`SEQ_NO`)
)
COLLATE='utf8_general_ci'
;

 

4. REQ_MST

 

 

 

CREATE TABLE `REQ_MST` (
	`SEQ_NO` INT NOT NULL COMMENT '고유 번호',
	`REQ_DATE` DATETIME NOT NULL COMMENT '날짜'
)
COLLATE='utf8_general_ci'
;

  REQ_MAT 테이블도 대충~ 만들어 준다~ 좀 다른게 있다면 REQ_DATE의 형은 DATETIME형으로 해주자!

 

 

  그리고 저장을 해주자

 

 

  짜잔 ~ 테이블 생성이 완료 됐다. 그럼 이제 값을 하나 예시로 넣어보자!

 

 

5. PRD_MST 데이터 삽입

 

 

 

  자 데이터 삽입은 어려운거 없다. 탭들 뒤져보면 무슨 +모양처럼 생긴친구(1) 있는데 눌러주면 새창이 생기면서 저기다 작성할 수 있다. 작성해보자.

 

INSERT INTO prd_mst (URL_STR, DISC_STR, USE_YN) VALUES
('www.naver.com','네이버','Y'),
('www.daum.net','다음','Y'),
('www.google.com','구글','Y'),
('www.youtube.com','유튜브','Y');
																			
SELECT * FROM PRD_MST

  위 쿼리를 복사해서 복붙하자! 그리고 F9를 누르면 전체 실행이 된다.

 

-START TRANSACTION

 

  보통 SELECT를 제외한 INSERT, DELETE, UPDATE 같은 DML을 사용할때는 MSSQL의 경우에는 begin tran을 걸고 쿼리를 돌린후 데이터가 제대로 됐는지 보고 정상이면 commit 명령어를 입력시켜 완전히 반영하고, 문제가 있으면 rollback 명령어를쳐 복구시키는데 마리아DB에도 역시 있다.

 

  BEGIN TRAN 명령어 대신 START TRANSACTION; 을 선언해주고 나머지 commit/rollback 방법은 같다. 일단 저건 내가 테스트해보고 그냥 넣는 데이터지만, START TRANSACTION하는 습관을 들이는게 미래를 생각하면 좋다. 잘못하다가 데이터가 다 지워지거나 이상하게 바뀌거나 할 수 있기때문에 연습이라도 꼭 해보자!

START TRANSACTION; -- 쿼리문 작성 COMMIT -- 반영 ROLLBACK -- 복구

 

  첫 INSERT라 설명을 좀 해봤구 우리 하던걸 계속 해보자

 

 

  콘솔창에는 이렇게 표시되며 잘 들어갔다는 메시지가 나온다.

 

 

  마지막에 SELECT문도 넣었기 떄문에 INSERT한 테이블을 조회한다. 보면 우리가 처음 계획했던 엑셀의 예시 데이터와 같음을 알 수 있다.

6. REQ_MST ..테이블 이름 변경

 

  REQ_MST 테이블은 마스터성 테이블이 아니라, 요청을 보낼빠다 보냇던 요청시간을 기록하는 Log성 데이터라서 미리 넣어줄 것은 없다..그런데 가만 생각해보니 테이블이름은 MST로 마스터성 정보를 담고있는 테이블인데..Log는 마스터성 정보가 아니잖아..?

 

  그렇다. 테이블 이름을 잘 못 지었다..

 

 

  바꿀테이블에 오른쪽 마우스를 클릭(1)하고 편집(2)을 눌러 3번 박스에 수정할 테이블명을 입력하고 저장(4)을 눌러주자!

 

 

  짜잔 테이블명이 바꼈당~

 

  여기까지 데이터 삽입하는 것에대해 알아보았다~

 

 

#마리아DB #무료DB #MariaDB #HeidiSQL #데이터베이스 #테이블 #스키마 #생성 #데이터 #삽입 #INSERT #STARTTRANSACTION #조회 #SELECT

 

반응형
반응형

 

https://extsdd.tistory.com/100

 

[Spring/eGov] #4 스프링 Sample 기본 예제 프로젝트, 패키지 이름 바꾸기 / 파일 찾기

 

extsdd.tistory.com

 

  저번 시간에 드디어 예제 프로젝트의 정체성을 완전히 내걸로 만들어놨다 ㅎㅎ이제 진짜 내프로젝트다. 이제 진짜 간단한 웹서비스를 만들어 볼껀데, 만드려는 서비스는 웹페이지를 포워딩 시켜주는 서비스 이다. 포워딩이란 다른곳으로 안내해준다는 건데, 사용자가 특정 URL로 접근하면 사용자가 가진 데이터를 확인해서 어디로 보내줘야할지 서버가 판단해주는 역할을 수행할 예정이다. 잔말 말고 컨트롤러를 추가해보자!!

 

1. Controller 추가

 

 

 

  일단 저번에 우리가 이 포워딩 기능을 담당하는 패키지가 fwd(fowarding)라고 정해놓았고 전 글들을 읽으면 알겠지만 컨트롤러 파일은 web에 위치해 있다. 따라서 1번에 있는 cpservice.fwd.web 디렉토리에 2번 New를 눌러 3번 Class를 생성해주자.

 

 

 

  별거 없다. 1번에 기능+Controller의 이름을 설정한다. 나는 forwading 기능을 수행하는 Controller이기 때문에 FwdController로 명명했다. 완료되면 딴거 손델 필요 없이 Finish를 눌러주자.

 

 

  ㅡㅡ... 찐따같은 파일이 하나 생겼다...음.. 지금까지 보던것고 다르게 간지가 하나도 안난다..기본적인 컨트롤러의 꼴을 잡아보자.

 

  먼저 이 FwdController 자바 파일은 컨트롤러의 역할을 수행할 것이기 때문에 서버가 서블릿한테 내가 컨트롤러라는 것을 알려야한다. 그러기 위해선 저번시간에 말했던 @ 모양의 어노테이션을 이용해 알린다고 했다. 한번 추가해보자

 

 

  망해따 벌써 오류가 뜬다.. 하지만 아니다. 저 빨간 줄이뜬 Controller라는 글자위에 마우스를 올려두고 한 1~2초를 기다려보자.

 

 

  이런 창이 나타난다. 그렇다 이클립스는 오류가 발생했을때 자기가 해결 할 수 있는만한것은 여려가지 방법으로 저렇게 추천을 해준다. 위 오류는 그거다. 그냥 @Controller만 써놓으면 컴퓨터가 모른다는 것이다. 그럼 저기 빨간 네모친 해결방안을 눌러보자.

 

 

  그럼 저 컨트롤러에 대한 정보들이 Import되는 것을 볼 수 있다. 그렇다. 컴퓨터가 알아먹을 수 있게 쟤에 대한 정보를 우리 컨트롤러에서 사용할 수 있도록 불러오자는 뜻이다. 저 org.springframework.stereotype.Controller 파일을 여기서도 사용하겠단 뜻이다. 그럼 저 @Controller가 뭔지 어떤놈이지 알아먹을 수 있단 소리로 이해하면 된다.

 

  저렇게 @Controller를 컨트롤러 클래스에 붙여놓음으로써 이제 서블릿은 사용자의 요청이 들어왔을때 여기서도 뒤지게 된다 ㅎㅎ 자. 이제 컨트롤러는 만들었고 이제 기능을 진짜로 만들어보자!!

 

  위에서 말했든 만들어볼 기능은 어떤 데이터를 사용자가 주면 그거에 따라서 서버가 알맞은 페이지를 띄어주는 기능이다. 자 그럼.. 일단 먼저 선행되어야 하는게. 사용자가 데이터를 줄때 이 데이터를 어떻게 넘겨주고, 서버에서 그걸 어떻게 받느냐는 것이다.

VO = Value Object (데이터 주머니)

 

  자 스프링에서 자료를 주고받고하는 대표적인 개념이다 브이오!! 한국말로 값을 가진 객체다!! 이게 머냐면은, 음.........구식 방식부터 생각해보자. 고객 검색 기능을 수행한다고 할때 최초에 사용자가 고객을 검색하면 이름, 연락처, 주소 등 3가지의 정보를 조회했다고 해보자. 과거에는 이 값들을 다 코드에 쳐서 달고 다녔다.

 

  통신기술이 발달함에 따라, 더 많은 정보들을 처리하게 되고, 예전시스템으로 어떤 기능을 처리하는데 200개의 변수를 담고 있다면.. 생각만해도 개 노가다일꺼 같다는 생각이 든다.. 그리고 이 고객정보 데이터를 한번만 가지고 가는것도 아니고 연계기능들을 수행하면서 계속 달고다니는데 그럴수록 문제는 더 심해진다.

 

  그래서 나온게 바로 VO다! 값들을 가진 객체!! 근데 이게 모든 데이터를 VO라는 데이터 주머니에 다 때려 박는게 아니고, 그 컨트롤러가 취급하는 정보들끼리 나눠놓는 것이다. 자 봐라, 고객정보를 처리하는 컨트롤러가 있고, 예약정보를 처리하는 컨트롤러가 있다고하면 여기서 VO는 몇개 일까? 2개다! (죽어도 2개여야하는 것은 아니다. 같이 쓸 수도 있고, 공통VO도 있고 하니까..)

 

 

  위 사진처럼 각 컨트롤러마다 필요한 공통정보들이 들어가 있을것이다. 저렇게 기능단위로 다 묶어놓으면 예약을 처리할때 저 VO만 가지고 댕기면 예약처리하는곳 어디서든 저 VO객체 하나만 넘기면 되는것이다. ㅎㅎ 쉽게 말하면 각 컨트롤러에서 사용하는 데이터들을 각각 모아놓은게 VO라고 보면 된다.

 

  나는 FwdController에서 취급할 데이터로는 고객이 요청할때 숫자 데이터를 넣어줄껀데 그데이터를 담고있는 VO를 지금 만들어보자.

 

 

  내가 FwdController에서 사용 할 VO다.... 기능이 너무 간단해서 사용자가 요청하는 데이터 한개만 담고 있을 VO다 .. 간지는 안나지만 따라하기엔 쉬울것이다. 이제 진짜 VO를 만들어보자.

 

 

  우리가 컨트롤러.java 파일을 생성했던 것 처럼 cpservice.fwd.service 패키지에 FwdVO.java를 추가해준다. 그리고 더블클릭하여 코드를보자!... 역시 간지가 안난다 빨리 채워보자.

package cpservice.fwd.service;

import java.io.Serializable;
import org.apache.commons.lang3.builder.ToStringBuilder;

public class FwdVO implements Serializable{


	/** reqParam */
	private int reqParam;

	public int getReqParam() {
		return reqParam;
	}

	public void setReqParam(int reqParam) {
		this.reqParam = reqParam;
	}


	@Override
	public String toString() {
		return ToStringBuilder.reflectionToString(this);
	}
	
}

 

  해당 내용을 복붙해준다. 만약 프로젝트 이름이 다르다면 그것만 수정해주면 된다.

 

 

  소스를 복붙하고, 저기 FwdVO에 마우스를 올리면 Add generated serial version ID 버튼이 있자. 버튼을 눌러 UID를 할당시키자. serialVersionUID란 같은 클래스인지 판별할때 쓰이는데 나중에 프로그램이 변하거나 할때 프로젝트가 안깨질 확률이 높아진다. 눌러서 추가하자.

 

 

  자 UID를 추가해서 serialVersionUID가 생성된 것을 볼 수 있다. 근데 저건 사실 필요없고 이제 VO에 담길 실제 데이터를 보자. 나는 진짜 딱 한 변수만 VO에 담았다. 혹시 다른사람 더 추가하고 싶은게 있으면 1번꼴로 계속 밑에 써내려가면 된다. 2번 박스는 VO에 한번만 작성되면 되는거라서 신경이 크게 안쓰인다. 머냐면은 VO.toString() 함수를 돌리면 VO내부에 있는 key 와 Value들이 쭈르륵 나와주게 하는 함수이다. 보통 로그데이터를 뽑거나할때 많이 쓰인다.

 

  다시 1번 박스를 보면 VO의 한 데이터는 3가지 구성으로 되어 있다 먼저 자료 선언이 있다. 나는 private int reqParam으로 선언해놨고 그 밑에 get, set이 붙은 함수들이 있다. 이건 약속이다 VO는 데이터 주머니기 때문에 데이터를 set하고 다시 가져갈 수 있도록 get이 있어야한다. 한변수당 이 두개 함수는 무조건 와야하는 것이다. 만약 없으면 오류가 난다.

 

자 여기까지 했으면 ReqParam이라는 하나의 데이터를 가지고 있는 주머니인 FwdVO를 생성했다. 이제 데이터 주고받을 주머니도 만들어 놨으니 진짜!! 컨트롤러에서 기능을 구현해보자!

 

@Request Mapping

 

package cpservice.fwd.web;

import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;

import cpservice.fwd.service.FwdVO;

@Controller
public class FwdController {

	@RequestMapping(value = "/reqUrl.do")
	public String selectSampleList(@ModelAttribute("searchVO") FwdVO searchVO, ModelMap model) throws Exception {

		return "redirect:http://www.naver.com";
		
	}
	
}

  자 다시 FwdController.java로 돌아와서 위 코드를 넣어주자! 그리고 코드를 분석해보자.

 

 

  새로 생긴거 위주로 보면 1번은 뭐 이제 살짝 느꼇을꺼다..크게 뭐 중요한건 아니라는걸... 어차피 소스 추가하면 이클립스가 다 자동으로 추가하기도 해주고, 없으면 넣으라고 알려도 주니까. 암튼 저 임포트 파일들은 아래 소스코드를 돌리는데 필요한 객체들을 다 가져와 놓은 것이라고 볼 수 있다.

 

  2번 박스를 보면 핵심이다. @RequestMapping 어노테이션이 붙으면 이건 서버에서 Servlet이 받아들일 URL주소를 정의할 수 있다! 나는 reqUrl.do 라고 정의해놨는데 기존에는 localhost:8080/reqUrl.do 주소를 쳐도 서버는 저게 뭔지 알 수 없었지만 이걸 추가하는 순간 서버는 localhost:8080/reqUrl.do를 요청하면 아래 구문들을 수행하게 된다!! 이런식으로 서버에 요청들을 여기 등록해놓을 수 있는것이다. 물론 경로형태로도 등록할 수 있다. localhost:8080/tm/rs/rm/reqUrl.do 이런식으로 세분화 시킬수도 있다는 말이당 ㅎㅎ 요기다 자기가 원하는 URL을 정의하면 된다. 나는 URL을 요청하는 작업을 구현할 것이기 때문에 reqUrl.do 로 지었당.

 

  3번 박스를 보면 함수이름은 selectReqUrl이고 그뒤가 살짝 어려울 수 있을텐데 설명을 들으면 그나마 이해가 갈 것이다. 자 처음부터 @modelAttribute("searchVO" FwdVO searchVO, ModelMap model) 이 구분부터 보면 이 요청이 오면 FwdVO라는 데이터주머니에 담아서 searchVO라는 이름으로 이 함수 내부에서 사용할 것이다. 그리고 model이라는 것을 만들어놨다가. 로직을 처하면서 여기다가 사용자가 볼 화면으로 보내줄 데이터들을 모아놓을 것이다~ 이정도 의미로 해석하면 되고, throws Exception 구문은 만약 에러가 발생할시 작동하는 함수인데 보통 서버 Log에 해당 사항을 기록한다.

 

  마지막 4번 보면 함수 내부에 별다른 로직은 없고 바로 return이 되는데, 기능을 해석해보면 사용자가 localhost:8080/reqUrl.do 이 URL로 접속하면 다시 naver로 포워딩 시켜주는 기능을 수행하게 되는 것이다. ㅎㅎㅎ

 

테스트

 

  자 이제 잘 작동하는지 모두 저장하고 서버를 작동시키자! 여러번 해봤으니 이제 따로 설명은 Pass..!

localhost:8080/reqUrl.do를 인터넷창에 입력해보자!

 

 

  뚜둔..! 분명 localhost 머시기 주소를 치고 들어갔지만 네이버 화면이 떳다!! 내가 만든 서버가 작동한 순간이다 .. 감동 짝짝짝.. 일단 오늘 여기까지하고.. 너무 졸려서 자러가야겠다..

 

#스프링 #Spring #전자정부프레임워크 #웹서비스 #만들기 #컨트롤러 #VO #생성 #다른 #URL #포워딩 #Controller

 

반응형
  1. 익명 2021.01.04 14:57

    비밀댓글입니다

  2. 익명 2021.01.28 13:21

    비밀댓글입니다

반응형

 

스프링 관련 포스팅을 마지막으로 쓴게 2019년 8월 말이라니..ㅋㅋ 벌써 1년이 다되가는 시간이 흘러버렸다..ㅋㅋㅋ 이번에 만들어볼 웹 서비스는 특정 URL을 요청하면 다른 URL로 자동 포워딩해주는 서버를 구축하려고 한다.

 

1. 개발 환경 설정

 

https://extsdd.tistory.com/49?category=851852

 

[스프링/전자정부 프레임워크 입문] #3 개발환경 셋팅 / JDK1.8 / 전자정부 프레임워크 설치

1. JDK 설치 2. 전자정부 프레임워크 설치 1. JDK 설치 1. JDK 설치 비전공자들을 위해 JDK가 무엇인지 간단하게 알아보자. 전편 글들을 읽으면 분명 우리가 사용하려고하는 프레임워크는 JAVA 플랫폼 ��

extsdd.tistory.com

 

  개발 환경 설정은 내가 작년에 작성해놨던 글을 참조하면 된다. 달라진 점이라면 전자정부프레임워크는 3.8 버전에서 3.9 버전이 되었으며 자바 JDK 버전도 8u221 에서 8u251 버전이 되었다는점이다. 어차피 링크대로 들어가면 최신본을 받을 수 있기때문에 환경설정은 해주면된다. 나도 새 컴퓨터에 내가 작성해놨던 글 보고 다시 했는데 깔끔하게 설치된다.

 

 

  환경설정을 마쳤으면 실행해주자

 

2. 프로젝트 생성

 

 

 

 

 

  1. 프로젝트를 새로 만들기 위해 File-New-Other 순으로 눌러주자.

 

  2. 그 다음 검색창에 "egov"라고 입력하면 eGov로 시작하는 템플릿들이 검색된다. 맨 밑으로 내려보면 "eGovFrame Web Project"가 있다. 선택해주고 Next 버튼을 눌러주자.

 

 

  1. 여기선 크게 세개만 보면 된다.

    - Project Name : 본인이 만들 프로젝트의 이름을 써준다. 나는 CP_service 라고 명명했다. 이건 자기 맘대로 지으면 된다.

 

    - Target Runtime : 실행 환경인데 이건 나중에 톰캣 연동할때 하면 됨으로 그냥 <None>으로 둬도 무방하다.

 

    - Dynamic Web Module Version : 이건 살짝 이해를 하고 넘어갈 부분인데, 아마 처음에 디폴트 값으로 2.5로 선택되어 있을것이다. 이건 사용하려는 Servlet의 스팩에 따라 알맞게 설정해줘야한다. 각 servlet에 알맞은 버전은 아래 링크에 들어가서 보면된다.

 

http://tomcat.apache.org/whichversion.html

 

Apache Tomcat® - Which Version Do I Want?

Apache Tomcat® is an open source software implementation of a subset of the Jakarta EE (formally Java EE) technologies. Different versions of Apache Tomcat are available for different versions of the specifications. The mapping between the specifications

tomcat.apache.org

 

 

  짜잔! 친절하게 찍어왔당. 우린 보통 많이쓰는 WAS인 톰캣8.0버전을 쓸껀데 8.0버전은 Servlet Spec이 3.1이기 때문에 우리도 3.1을 선택해주는 것이다. 나중에 사용하는 톰캣과 프로젝트의 servlet 스펙이 맞지 않게되면 오류를 내뿜게 된다.

 

  - Maven Setting

  이건 패키지 명명 규칙을 검색해보면 더 자세한 정보를 알 수 있는데 간단하게 알고가자면

    # Group id : com.회사이름 으로 보통 명명한다. 그래서 나는 com.extsdd 로 명명했다. 내 블로그 주소가 extsdd이기 때문!

    # Artifact id : 프로그램 이름이다. 그래서 자동으로 프로젝트의 이름이 딸려온다

    # Version : 최초 생성이기 때문에 1.0.0부터 시작한다.

 

  모든 설정이 끝났으면 Finish버튼이 아닌 Next 버튼을 눌러주자. 그냥 Finish를 하면 프로젝트 깡통만 생성되기 때문에 오류부터 뜬다.. 추가로 해줘야할 것이 많기 때문에 일단 기본적인 뼈대라도 잡을 수 있게 세부 설정을 해야한다.

 

 

  위에 Generate Example을 체크하고 Finish버튼을 누르면 기본적인 웹서비스 뼈대는 갖춘 상태로 프로젝트가 생성된다 ^-^ 그럼 뭔가 쭉쭉 진행되는데 바로는 안돼고 한 3~5분정도 기다리면 프로젝트 생성이 완료된다.

 

 

 

  이 창이 뜨는데 "Open Perspective"를 눌러주자. 그리고 나서 이클립스 메인화면에 "Welcome" 탭에 있는 X를 눌러 탭을 꺼주자

프로젝트 생성 완료

 

 

 

  후...1번 박스를 보면 프로젝트 생성하자마자 오류가 생겼다.. 오류가 생긴파일은 2번 박스에 있는 web.xml이다. web.xml에 대한 설명도 추후에 하겠지만 일단은 우리 Web Application의 환경 설정 파일이라고 생각하면 된다. 서비스가 부팅되면 먼저 저 web.xml을 읽어와서 이 서비스가 어떤놈인지 부터 파악을 하는 파일이다.

 

  일단 알겠고 다시 3번 박스를 보면 저기에 버젼 2.5라는 글씨가 보이는가!? 바로 저부분이 틀려서 오류가 발생한 것이다. 우리가 아까 프로젝트 생성할때 Dynamic Web Module Version을 기본 값인 2.5가 아닌 3.1로 설정해 놨기 때문이다. 전자정부 프레임워크의 셈플 예제들은 2.5 기준으로 만들어져 있나보다. 일단 저걸 바꿔주자.

 

 

  총 3부분을 바꿔줘야한다. 3,4 행은 2_5를 3_1로 바꾸고 5행의 2.5는 3.1로 바꿔준다.

 

 

 

 

  1. 이제 프로젝트 폴더를 선택하고 ALT + F5 키를 눌러준다. 메이븐 업데이트 단축키이다.

  2. 바로 OK를 눌러주자.

 

 

  우왕..오류가 없어져따...!

 

 

  자 이제 여기까지 프로젝트 생성에 대해서 알아보았고 다음 포스팅에 이제 실제로 톰캣까지 연동해서 이 테스트 예제를 돌려보자.

 

#스프링 #Spring #전자정부프레임워크 #eGov #프로젝트 #예제 #생성

 

 

반응형
반응형

https://extsdd.tistory.com/76

 

[아마존 AWS 무료 EC2 서버 생성하기] #2 IAM 계정 생성 후 권한 부여하기!

https://extsdd.tistory.com/75 [아마존 AWS 무료 EC2 서버 생성하기] #1 AWS 회원가입/ AWS란 1. 서론 대학생이었을 때는 웹 서비스에 큰 관심이 없었으나, 회사 일을 시작하고 나서부터는 웹 서비스가 재밌다는..

extsdd.tistory.com

이제 사전 셋팅은 끝났고 드디어 실제로 EC2 서버를 생성한다.

https://ap-northeast-2.console.aws.amazon.com/console/home?region=ap-northeast-2

 

https://ap-northeast-2.console.aws.amazon.com/console/home?region=ap-northeast-2

 

ap-northeast-2.console.aws.amazon.com

 

1. 서비스 찾기에서 EC2를 검색해주자.

2. 살짝 내려보면 인스턴스 시작 버튼이 있다 클릭해주자.

  1. 우리는 스프링 프로젝트를 올리기위해서 리눅스 기반인 우분투를 설치해주자! 이때 꼭 프리티어 사용 가능인지를 봐야한다! 안보고 아무거나 했다가는 나중에 요금이 과금될 수 있다.

  2. 서버 성능을 고르는건데 프리 티어는 어차피 t2.micro로 고정이다... 그냥 다른 하드웨어 머있는지나 구경하고 다음단계로 넘어가자. 이것도 역시 프리 티어 사용가능인지 확인하자.

  1. 이전 포스팅에서 만들었던 EC2_role을 IAM역할에 추가해준다.

https://extsdd.tistory.com/76

 

[아마존 AWS 무료 EC2 서버 생성하기] #2 IAM 계정 생성 후 권한 부여하기!

https://extsdd.tistory.com/75 [아마존 AWS 무료 EC2 서버 생성하기] #1 AWS 회원가입/ AWS란 1. 서론 대학생이었을 때는 웹 서비스에 큰 관심이 없었으나, 회사 일을 시작하고 나서부터는 웹 서비스가 재밌다는..

extsdd.tistory.com

못 본사람은 참조하면 된다.

  2. 디폴트는 스토리지 크기가 8기가지만, 프리티어에서 최대 사용가능한 용량은 30기가이기 때문에 30으로 설정해주고 넘어간다.

1. 태그 추가는 그냥 넘어가면 된다.

  자 여기 설정은 좀 봐야 한다. 내 EC2 서버에 방화벽을 설정하는 화면인데, 저기 추가된 포트들만 개방하겠다는 뜻이다. 비 일단은 SSH는 기본적으로 있을 것이고 나머지 HTTP, HTTPS, 사용자 지정TCP, MYSQL/Aurror을 추가해서 위 처럼 입력해준다.

  비전공자도 이해할 수 있도록 쉽게 설명해 보겠다. 내 서버 주변으로 성곽처럼 방화벽이란게 둘러져 있는데, 이 방화벽이란 친구들은 port라는게 있다. 성곽으로 따지면 문이다! 서울 성곽에 동대문, 서대문, 남대문이 있듯이 방화벽이란 친구에겐 0 ~ 65535번 Port까지 가지고 있다. 즉 65535개의 문을 가지고 있는건데, 이 6만5천개의 모든 문을 열어놓으면 보안에 취약할수 밖에 없을것이다. 그래서 서버를 구축할때 서버에 모든 port를 닫고 방화벽에 내가 사용할 Port들만 개방할 수 있도록 등록을 하는 것이다.

 

 자 우리가 알고있듯이 인터넷! 네이버든 다음이던 우리가 주소를 치고 들어갈때 http로 시작하는 주소들을 본적이 있을것이다. HyperText Transfer Protocol의 약자로써 www(world wide web)상에서 정보를 주고받을 수 있는 통신 규약이라고 생각하면 된다. 거기에 더 보안이 강력해져 secure해진 친구가 s가 붙어 https라고 불리며 더 안전한 통신 프로토콜을 보장해준다. 이처럼 우리 인간이 쉽게 이해할 수 있는 http나 https같은 프로토콜들은 컴퓨터가 이해하도록 숫자로 바꿔줘야한다. http는 80포트를 사용하고 https는 443포트를 사용한다. 그래서 저 두포트를 방화벼에 등록시키면 기본적으로 웹 서비스 요청은 서버가 받아들일 수 있다는 것이다! 반면에 FTP요청처럼 등록되지 않은 친구들의 요청이 오면 방화벽이 해당 포트가 열렸는지 확인하고 열리지 않았으면 요청을 반려시킨다.

 

  자 이제 방화벽이뭐고 포트가 뭔지 알아봤으니 우리가 우리 EC2서버 방화벽에 어떤 포트를 개방할지 한번 보자.

 

SSH 22번 포트 : Secure Shell이라고 불리며 우리 EC2서버 구축후 이걸 제어하려면 원격으로 붙어야하는데 그 서비를 지원하는 포트가 바로 이 22번 포트인거다. 그래서 디폴트 값으로 이건꼭 필요하기에 SSH포트는 등록되어 있는 것이다.

HTTP 80포트 : 위에 설명 했듯이 웹 서비스 생각하면 된다.

HTTPS 443포트 : 더 보안이 강력해진 웹 서비스

사용자 지정 TCP 8080 : 스프링 프로젝트를 올려 WAS를 구동시키려면 톰캣을 돌려야하는데 톰캣 포트가 8080이다. 

MYSQL/Auror 3306 : Maria DB 를 이용하기 위해 포트를 개방해준다.

 

  마지막으로 소스 IP주소가 0.0.0.0인 것은 이 포트에 모든 IP를 허용하겠다는 뜻이다. 이제 끝났으니 검토 및 시작 버튼을 눌러주자.

  1. 마지막으로 서머리를 해주는데 훝어보고 시작하기를 눌러보자.

  2. 키 페어를 생성해야하는데 쉽게말해서, 이 EC2서버로 접속하기 위한 인증서라고 생각하면 된다. 우린 기존 키페어가 없으니 새 키페어를 생성해 놓는다. 생성한 키페어는 절대로!!! 잃어버리면 안되니 꼭!!! 어느 위치에 저장할지 기억해 놓자. 키페어 다운로드! 그리고 다운로드가 완료됐으면 인스턴스 시작을 눌러준다!

  와우! 인스턴스가 생성됐다!! 일단 혹시 요금 과금이 무서운 사람들은 결제 알림 생성에 들어가 이메일을 등록해놓도록 하자

  다음 해야할 작업은 탄력적 IP를 등록해야 한다. AWS EC2는 껏다 키거나 시간이 지나면 IP바 바뀌게 되어있는데 IP주소가 바뀌면 웹 서비스를 고정적으로 운영할 수 없게 된다. 그래서 고정 IP를 등록을 해야한다. 프리티어에서는 1개의 고정IP를 무료로 등록할 수 있다. 추가로, 고정 IP를 할당해 놨는데 인스턴스를 연동해놓지 않으면 또 요금이 부과된다. 아마존 입장에서는 고정IP한개가 아무것도 사용하지 않으면 손해가 발생하기 때문이다.

  1. 뭐 별거 없다. 탄력적IP주소 할당을 눌러주자.

  2. 여기도 별거 없다 할당을 눌러주자.

와우~ IP가 생겼다~ 이제 이 발급받은 IP를 내 EC2 서버랑 연결시켜주자! 우측에 "이 탄력적 IP주소 연결"버튼 클릭!

  아까 생성했던 인스턴스를 선택하고 연결하자!

짜잔~ 마침내 AWS EC2 서버구축이 끝났다!

 

다음편부턴 이제 이 EC2 서버에 원격 접속하는 법에 대해 알아보자!

 

#아마존 #AWS #무료 #EC2 #서버 #생성 #구축 #인스턴스 #방화벽 #탄력적IP

반응형
  1. 익명 2020.05.05 23:53

    비밀댓글입니다

  2. 익명 2020.05.06 11:39

    비밀댓글입니다

  3. 익명 2020.05.06 11:41

    비밀댓글입니다

    • 외장_하드 2020.05.06 12:07 신고

      아아 윈도우계열은 원격 접속포트가 3389라서 저건 필수포트니까 저렇게뜬거네요 방화벽헤 3389도 추가하며될것같아요!

  4. 안녕하세요 2021.03.31 20:24

    안녕하세요
    보안 그룹 구성 부분에서
    사용자 지정 TCP / TCP / 8080 / 0.0.0.0/0, ::/0
    부분을 잘 따라서 입력하였는데
    <소스는 CIDR 블록이나 보안 그룹 ID이어야 합니다>
    라는 경고문구가 나오며
    검토 및 시작버튼을 클릭할 수 없습니다
    혹시나 하여 소스를
    내 pc로 설정해보았으나 마찬가지로 넘어갈 수 없었습니다

    혹시 어떻게 해결할 수 있을지 조언부탁드리겠습니다.
    감사합니다

    • 안녕하세요 2021.04.01 12:45

      사용자지정tcp 가 아니라
      그 아래 있는 mysql/aurror 의 소스 설정이 누락된게 문제였습니다ㅎㅎ
      질문을 지우려했으나 비밀번호도 잊었고..
      혹시 저와 같은 실수를 하실 분들을 위해 남겨두겠습니다

      유용한 포스팅 감사합니다 :)

  5. Arsene H 2021.09.30 18:03 신고

    생성 이후에 보안그룹구성 수정할 수 있나요??

반응형
1. 서론

  대학생이었을 때는 웹 서비스에 큰 관심이 없었으나, 회사 일을 시작하고 나서부터는 웹 서비스가 재밌다는걸 조금 느끼고 있다. 코딩글은 오랫만에 써보는데 이번에 해볼 것은 아마존 AWS에서 무료 EC2 인스턴스를 생성하여 거기다 내 스프링 프로젝트를 올려서 구동시키는 것이다.

 

  어떤 스프링 프로젝트를 올릴 것이냐면, 최근에, 쿠팡 파트너스 URL을 블로그 글 본문에 포함시키면 저품질 블로그로 분류가 되고 있는데, 내 생각에는 쿠팡 파트너스 URL을 본문에 직접 삽입하지 않고, 링크를 내 개인서버로 요청하면 내 서버에서 자동으로 쿠팡 파트너스 링크로 포워딩 시켜주는 시스템을 개발할 예정이다.

 

  될지 안될지는 모르겠지만, 일단은 첫번째 목표는 쿠팡 파트너스 URL을 본문에 노출하지 않는것과, 두번째 목표는 포워딩된 링크로 사용자가 들어가도 수익이 창출하는지를 지켜볼 예정이다.

 

2. AWS란?

  AWS 정말 많이 들어봤을 것이다. 아마존에서 운영하고 있는 Amazon Web Services 로써 서버, 컴퓨팅, 스토리지, DB, 네트워킹 등의 서비스를 원격으로 가능케하는 서비스 이다.

 

  과거에 웹 서비스를 하려고 하면, 내가 내 집에 24시간 켜져있는 서버용 컴퓨터를 두던가, 아니면 업체에 웹 호스팅을 받아, 업체에서 구축된 서버에 내가 조그만 부분을 임대해 운영하는 것이 보통이었는데, AWS는 전세계에 있는 아마존 데이터센터의 자원을 클라우드 개념으로 사용하여 서버를 단독으로 사용할 수 있느 서비스 이다. 이 서비스로 인해서 아마존은 온라인 쇼핑업체에서 IT 전문 업체로 발돋음 할 수 있었으며 아마존의 캐시카우 역할을 똑똑히 하고있기도 하다.

 

3. EC2란?

  먼저 EC2가 뭔지 알아보자.  EC2란 Amazon Elastic Compute Cloud 의 약자로서 끝에 C가 두번이어서 C2라고 표현하는 것 같다. EC2란 크기 조정이 가능한 컴퓨터 리소스를 클라우드에서 제공하는 웹서비스 인데, 비전공자도 이해할 수 있도록 쉽게 표현하자면, 내가 원하는 크기의 서버를 클라우드 서비스로 제공한다는 것이다. 아.. 딱히 아주 쉽게 설명하진 못했나?.. 클라우드 서비스의 개념부터 잡고 가야하나?

 

  과거에는 웹 서비스를 운영하려면 내가 서버용 컴퓨터 하드웨어를 직접 사서 운영하는 등 그 실체를 사용자가 소유해야했지만, 기술이 발전함에 따라, 내가 만들어 놓지 않아도 누군가가 만들어둔 환경을 원격으로 접속해 이용하는 것이라고 생각하면 된다. 즉, 서버 컴퓨팅, 스토리지, 네트워크등은 AWS에서 물리적, 논리적 장치를 다 구성해 놓고, 우리는 거기 원격으로 붙어서 사용만하면 되는 사용자에겐 아주 편리한 기술인 것이다.

 

  자 위에 계속 설명했듯이 클라우드 기술을 가장 잘 활용한 가장 인기 있는 EC2를 사용하는데 당연히 무료라는 생각을 버려야한다. 기업은 땅파서 장사하는 것이 아니니까. 하지만 AWS 프리 티어라는 것이 있는데 12개월간 무료로 사용할 수 있다. 당연히 서버 스토리지나 성능에 제약조건이 많이 있으나, 우리처럼 1인 개발자, 대학생들이 시험삼아 웹 서비스를 운영하는데는 충분한 크기이다. 

 

  머 말로는 무료라고 하는데 사실 정확히 따지고 보면 서버하나를 한개의 "인스턴스"라고 표현한다면, 하나의 인스턴스당 1개월간 750시간을 무료로 이용할 수 있는 것이다. 자 만약 내가 한개의 서버를 24시간동안 한달인 31일간 돌렸다? 그럼 24시간x31일 을 하면 744시간이 나온다. 즉 750시간보다 작으니 무료인 샘이다!! 하지만 두개이 인스턴스를 돌리면 (= 두 개의 서버) 1488시간이 됨으로 추가요금이 과금된다. 추가 과금이 되지 않으려면 한개의 인스턴스만 사용하는 것을 추천한다.!

 

3. EC2 계정 생성

https://aws.amazon.com/ko/free/?sc_ichannel=ha&sc_icampaign=signin_prospects&sc_isegment=ko&sc_iplace=sign-in&sc_icontent=freetier&sc_segment=-1&all-free-tier.sort-by=item.additionalFields.SortRank&all-free-tier.sort-order=asc

 

AWS 프리 티어

12개월 무료: 이러한 프리 티어 오퍼는 AWS 신규 고객에게만 제공되며 AWS 가입일로부터 12개월 동안 유효합니다. 12개월의 무료 사용 기간이 만료되거나 애플리케이션 사용량이 프리 티어 범위를 초과할 경우에는 사용량에 따라 표준 서비스 요금을 지불하면 됩니다(전체 요금 내역은 해당 서비스 페이지를 참조하십시오). 제약 조건이 적용되므로 자세한 내용은 이용 약관을 참조하십시오. 언제나 무료: 이러한 프리 티어 오퍼는 12개월의 AWS 프리 티어 기간이

aws.amazon.com

 위 링크로 접속한다!

1. 무료 계정 생성 버튼을 클릭! 

2. 적절하게 계정정보를 입력해주고 넘어가자.

1. 기본적인 인적사항을 기입해주고 다음으로 넘어간다.

2. 신용카드 정보를 등록하는데, 1달러가 결제된다...!!!!!!!. 놀라지 마라, 저기 화면을 읽어보면 카드가 정상 승인이 나는지 확인하는 용도이고 3~4일 후에 다시 취소된다고 한다. 이 카드 정보는 추후에 추가 과금되었을 경우 결제하기 위해 등록해 놓는 것이다.

1. 인증수단을 선택하고 인증번호 전송버튼을 누른다.

2. 전달받은 인증번호를 입력하고 코드확인을 진행한다.

1. 코드가 정상적으로 인증됐다. 다음으로 넘어가자.

2. 우리는 돈이 없으니 무료플랜을 선택한다.

1. 뭐 좀만 기다리면 만들어준다는 내용 같다.

2. 등록했던 이메일의 메일함을 보면 아마존에서 계정생성이 완료됐다는 메일이 와이다.

https://signin.aws.amazon.com/signin?redirect_uri=https%3A%2F%2Fconsole.aws.amazon.com%2Fconsole%2Fhome%3Fnc2%3Dh_ct%26src%3Dheader-signin%26state%3DhashArgs%2523%26isauthcode%3Dtrue&client_id=arn%3Aaws%3Aiam%3A%3A015428540659%3Auser%2Fhomepage&forceMobileApp=0&code_challenge=8QBnxNttOLUWDhDlRPSFAEp6_Bs2u61M1jyrzqdYki0&code_challenge_method=SHA-256

 

Amazon Web Services Sign-In

이메일: 비밀번호 비밀번호 찾기 로그인 다른 계정으로 로그인 AWS 계정 새로 만들기 귀하의 계정은 멀티 팩터 인증(MFA)을 사용하여 보호됩니다. 로그인을 마치려면 MFA 디바이스를 켜거나 본 후 아래에 인증 코드를 입력합니다. 이메일 주소: MFA 코드 제출 MFA 문제 해결 취소 계정이 정지되어 인증에 실패했습니다. 계정의 미지급 잔액을 지불하지 않아 계정이 일시 중지되었다고 생각하는 경우, 지금 결제 페이지 에서 지불하여 계정을 재활성화할 수 있습

signin.aws.amazon.com

자 다시 해당 링크로가서 로그인을 해보자!

1. 링크가 귀찮다면 아까 그 화면에서 콘솔에 로그인 버튼을 눌러도 된다.

2. 루트 사용자를 선택하고 아까 생성했던 이메일 주소로 로그인 한다.

짜잔.! AWS 계정이 생성됐다. 1시방향 지역설정을 서울로 바꿔주자!

 

자이제 계성생성은 끝났고! 다음으론 IAM계정을 생성할 것이다. Root 계정이 있고 IAM계정이 있는데 이것에 대한 설명은 다음 포스팅에서 다루도록 하겠다.

 

#아마존삭제#AWS삭제#AmazonWevServices삭제#EC2삭제#무료계정삭제#생성삭제#방법삭제#AWS회원가입삭제#AWS란삭제#프리티어삭제

반응형

+ Recent posts