이전 포스팅
https://turtlejacob.tistory.com/68
jscode - 스프링부트 입문 클래스 ot. 1
이번 회차에 한 내용은 간단하다. .강사님의 소개와 커리큘럼 소개 .환경세팅 .스프링 프로젝트 만들기 강의를 들어가면서 이러한 내용을 배울 수 있고 하셨다. 스프링부트의 기초 api 개발의 기
turtlejacob.tistory.com
jscode - 스프링부트 입문 클래스 2회차 학습내용 기록( 2023.07.10 )
오늘의 학습 목표
- api에 꼭필요한 네트워크
- api와 백엔드에 대해서
- http
- url
동적 리소스
- 요청별로 다른 응답이 필요할경우
- 이 부분을 애플리케이션 로직이 필요
- 이 부분이 백엔드이다.!!
api
- http를 주고 받는 하나의 방법
- 하나의 ㅇurl
- 주로 JSON식으로 주어짐
api url 구조
- 프로토콜
- 도메인
- 경로
- 파라미터(쿼리)
- 내용
간단한 api를 직접 만들어 보기
스프링 프로젝트 내부에 controller 클래스 파일을 만들고
내부에 @getMapping("api url")을 설정해주고 내부 반환같을 만들어 줬다.
@RestController
public class TestController {
@GetMapping("api/test")
public String test() {
return "test";
}
}
+jar 파일로 프로젝트 배포하기
콘솔에 ./gradlew build을 실행하면 내부에 jar 파일을 생성한다 jar 파일만 공유해서 스프링 프로젝트를 실행 시킬 수 있게 된다.
후기
네트워크 내용은 학부수업 1부터 7계층까지 있다면 수강신청을 잘못해서 4계층부터 7계층까지 배워서
네트워크를 나름 공부하긴 했지만 대놓고 말하긴 좀 그럼 부분이 있었는데 이렇게 개요 정도 짚고 가니 좋은것 같았다.
그리고 http 같은 경우 기억에 좀 남은거보니 아마 배웠던 부분이였던거 같다
단순히 프로그래밍언어를 사용해서 프로그램을 구현하는 것만을 생각하는데 웹 개발에서는 네트워크에 대한 지식이 활용되니, 내가 배웠던 것들과 또 배운 것들을 섞어 새로운 것을 배우는데 활용되니 흥미로운 부분이 있었다.
또한 옛날에 spring 공부하고 싶어서 프로젝트 만들고 getmapping으로 html파일과 연결해서 localhost주소로 html파일을 열보는걸 해봤는데 이게 api를 만드는 것이였던 것임을 깨달았다. 또한 만든 api를 postman을
2회차 미션
1. 네트워크 면접 단골 질문
- restful api 란?
- Representational State Tranfer의 약자로 웹을 이용할 대 제약 조건들을 정의하는 소프트웨어 아키텍
- http url을 활용해 자원을 명시하고 http method를 통해서 CRUD를 적용하는 것
- http 통신이란?
- 서버와 클라이언트 간에 http 프로토콜을 통해서 통신하는 것을 말하며
- 간단하게http 요청, http 응답으로 나누어 진다.
-
- 일단 get은 read(가져온다는 개념), post는 create(수행한다는 개념) 역할의 차이를 가지며
- get은 url의 파라미터의 쿼리 스트링에서, post는 http 메세지의 body 부분에 담겨서 보내진다.
- 긔 외로 캐시, 브라우저기록, 북마크 추가, 데이터 길이 제한, idempotent 등의 차이가 있다.http 메소드 get과 post의 차이점
2번 postman으로 원하는 정보 api로 호출 - 실습해봄
3번 postman으로 공공데이터 api 호출하기 - 옛날에 해봐서 패스함
4번 연습문제를 통해 배운 내용 정리하기 - 이 블로글로 대체
5번 문자열 리턴하는 GET api 생성하기
@GetMapping("api/name")
public String test2(){
return "이호준";
}
6번 query parameter로 입력받은 값을 리턴하는 GET api 생성하기
@GetMapping("api/returnName")
public String returnName(@RequestParam("name") String name){
return name;
}
다음 포스팅
https://turtlejacob.tistory.com/70
jscode - 스프링부트 입문 클래스 (CURD APi). 3
이전 포스팅 https://turtlejacob.tistory.com/69 jscode - 스프링부트 입문 클래스 (api와 네트워크). 2 이전 포스팅 https://turtlejacob.tistory.com/68 jscode - 스프링부트 입문 클래스 ot. 1 이번 회차에 한 내용은 간단
turtlejacob.tistory.com
'Development studies > spring' 카테고리의 다른 글
jscode - 스프링부트 입문 클래스 (Spring Data JPA 활용과 예외처리). 5 (0) | 2023.08.16 |
---|---|
jscode - 스프링부트 입문 클래스 (Spring data JPA). 4 (0) | 2023.08.16 |
jscode - 스프링부트 입문 클래스 (CURD APi). 3 (0) | 2023.08.16 |
jscode - 스프링부트 입문 클래스 (ot). 1 (0) | 2023.08.09 |
jscode - 스프링부트 (Spring Boot) 입문 클래스를 들어가며 . 0 (0) | 2023.08.09 |