강의 (130) 썸네일형 리스트형 회원 Service 생성 및 Test Service 세팅 Service에는 핵심 비즈니스 로직이 존재하는 곳입니다. 회원 가입 (join 메서드)을 살펴보면 validateDuplicateMember 메서드를 이용하여 중복을 체크하는 기능이 있습니다. 중복이 존재하지 않으면 회원 정보를 저장하고, 회원 id를 반환하도록 구현을 하였습니다. @Service annotation을 통해 해당 클래스를 bean으로 등록 하여 해당 클래스가 Service로 사용됨을 Spring Framework에 알려줍니다. package com.example.hellospring2.service; import com.example.hellospring2.domain.Member; import com.example.hellospring2.repository.Memb.. 회원 Repository 생성 및 Test 컨트롤러: 웹 MVC의 컨트롤러 역할 서비스: 핵심 비즈니스 로직 구현 회원은 중복가입이 안된다. 리포지토리: 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인: 회원 주문 쿠폰 처럼 데이터베이스에서 저장되고 관리되는 비즈니스 도메인 객체임 Member doamin 설계 회원가입을 할 때 사용하는 회원에 대한 객체이다. 회원 id (내부용), 회원 이름에 대한 정보를 담고있다. 이 domain을 어떻게 사용할 지 추가적으로 확인해보자. package com.example.hellospring2.domain; public class Member { private Long id; private String name; public Long getId() { return id; } public v.. 스프링 웹 개발 스프링을 이용해서 웹을 개발할 때 3가지 방법이 존재합니다. 정적 컨텐츠 MVC와 템플릿 엔진 API 이 3가지 방법이 어떤 것인지, 동작원리는 어떻게 되는지에 대해서 알아보도록 하겠습니다. 정적 컨텐츠 html 그 자체를 어떠한 조작없이 바로 보여주는 형태입니다. static 폴더에 html 파일을 두고 해당 주소로 접속을 하게 되면 우리가 작성한 html 그대로를 보여주는 형태입니다. 구현 static/hello-static.html 파일을 생성하고 아래의 내용을 복사 붙여넣기를 해 봅시다. 정적 컨텐츠 입니다. 스프링 서버를 구동 후 localhost:8080/hello-static.html 에 들어가보면 아래와 같은 화면을 볼 수 있을 것입니다. 정적 컨텐츠의 동작 순서 1. 웹 브라우저에서 lo.. 프로젝트 생성 spring boot 프로젝트 생성 spring.io 에서 초기 세팅이 가능합니다. https://start.spring.io 위 사이트에 접속 후 아래와 같이 초기 세팅을 진행한 후에 다운로드를 받습니다. 다운로드 받은 파일 압축을 풀고 intellij 에서 builde.gradle 파일을 open 합니다. java 11 version 다운로드 - 프로젝트는 11 version으로 다운 받았고, 나는 java 8 version을 사용하고 있었기에 11 version으로 변경을 진행합니다. (다운로드 방법은 아래 참고1, 참고2를 확인 바람) 참고1 - java 11 다운로드 방법 https://studee.tistory.com/85 자바 설치 1. https://www.oracle.com/kr/java.. HTTP Response의 이해 (@Controller, @RestController) @Controller를 사용해본적이 있고 @RestCotroller를 사용해본적이 있어야 이해하기가 편할 것으로 생각됩니다. 들어가기에 앞서 Controller return 값에 따라 HTTP Response의 값이 어떻게 변하는지 먼저 알아보도록 하겠습니다. 위에 표를 보고 한눈에 이해하기가 쉽지 않을 수 있습니다. 같이 한번 살펴보도록 하겠습니다. 일반적으로 @Controller가 반환하는 return 타입은 1가지 나눌 수 있습니다. (String) @RestController가 반환하는 return 타입은 2가지 나눌 수 있습니다. (String, String외) 이에따라 HTTP Response는 어떻게 변하는지 살펴보도록 하겠습니다. @Controller 자, 앞서 Controller 어노테.. HTTP의 구조를 알아보자 Client 와 Server 간 Request, Response 는 HTTP 메시지 규약을 따름 HTTP 메시지는 웹 서비스 개발자(백엔드, 프론트 개발자)에게 매우 중요한 내용! HTTP의 구조 HTTP 메시지는 서버와 클라이언트 간에 데이터가 교환되는 방식입니다. 메시지 타입은 두 가지가 있습니다. 요청(request)은 클라이언트가 서버로 전달해서 서버의 액션이 일어나게끔 하는 메시지고, 응답(response)은 요청에 대한 서버의 답변입니다. Request와 Response는 startline, header, body등 3개의 구조로 나눠져 있습니다. Request와 Response 각각의 구조를 조금 더 면밀히 살펴보도록 하겠습니다. Reqest Startline - api 호출 부분입니다. -.. HTTP IP 주소를 통해 클라이언트와 서버는 상호 통신이 가능하다. (IP는 인터넷 주소) 패킷이라는 통신 단위로 데이터를 전달한다. 출발지와 목적지 IP를 적어서 IP 패킷을 전달한다. 클라이언트에서 서버로 가능 방법과 서버에서 클라이언트로 가는 방법은 다를 수 있다. IP 프로토콜의 한계 비연결성 - 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송 비신뢰성 - 중간에 패킷이 사라지면? (패킷 소실) - 패킷이 순서대로 안오면? (패킷 전달 순서 문제 발생) - 패킷의 크기가 클 경우 나눠서 발송을 함, 보내는건 순서대로지만 도착은 순서대로 도착한다는 보장은 없다. 프로그램 구분 - 같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이면 (한개의 컴퓨터로 게임도 하고, 음악도 들고 다양한.. 5주차 파일질라 : 클라우드 환경에 파일을 옮기기 위해서 사용 가비아 : 도메인을 구입, ip 주소와 도메인을 매칭시켜줌 프로젝트를 서버에 옮기기 localhost: 5000 에 몇가지 세팅을 더 하면 모두가 볼 수 있는 페이지를 열 수 있다. 하지만 내 컴퓨터를 서버로 역할을 하려면 1. 컴퓨터가 항상 켜져있고 프로그램이 실행되어 있어야 하며 2) 모두가 접근할 수 있는 공개 주소인 공개 IP 주소(public ip address)로 나의 웹 서비스에 접근할 수 있도록 세팅 해야한다. 우리는 AWS라는 클라우드 서비스에서 편하게 서버를 관리하기 위해서 항상 켜 노흥ㄹ 수 있는 컴퓨터인 EC2 사용권을 구입해 서버로 사용할 것이다. ## aws login iterm 에서 아래와 같은 명령어를 치면 접속가능 s.. 이전 1 ··· 8 9 10 11 12 13 14 ··· 17 다음