2회차 베이직반 수업을 들었다.
Spring의 기본적인 개념들을 배웠는데 나는 Spring은 그냥 단순히 자바를 사용한 프레임워크 라고만 생각했고, 사실 그 안에 내용들은 아무것도 모르고 그냥 이름만 알고있었다. 근데 이번 수업에서 그것보다 더 깊고 자세한 부분들을 배웠다.
먼저, Spring Framework는 MVC(모델-뷰-컨트롤러)를 기본적으로 알고 가야하는데 이것은
Model : @Service 라는 Annotation을 사용하고, 컨트롤러와 데이터를 연결한다. (로직 생성)
View : 인터페이스를 담당한다. (프론트엔드의 처리구역)
Controller : @Controller 라는 Annotation을 사용하고, M과 V를 연결한다. (요청 처리)
로 정리가 가능하다.
Spring Bean도 굉장히 중요하다고 말씀하셨는데 빈은 인스턴스화 된 객체를 의미하며
싱글턴 패턴 : 각 빈 정의에 대해 하나의 인스턴스 객체만 생성한다.
의존성 주입 : 생성자 인수 / 세터(Setter)를 통해 의존성을 주입받는다.
Annotation 또는 XML구성 : XML파일을 통해 선언하거나, 클래스에 Annotation을 붙여서 자동감지 후 사용되게 한다.
위 3가지 특징이 있다.
의존성 부분에서 살짝 이해하기 힘들었지만 파라미터나 리턴값 또는 지역변수를 다른 객체에서 참조한다고 설명해주셔서 바로 이해 할 수 있었다.
위와 같은 내용들을 순서대로 설명하고 웹 흐름을 알려주셨는데 이건 나도 대충 알고 있던 내용이라 이해하기 쉬웠다.
우리가 URL을 입력할 때 웹사이트에 적혀있는 내용들을 풀어서 설명해주신 부분인데, 사실 어렸을때 저게 무슨 영어인가 궁금해서 찾아봤던게 도움이 되었다 ㅎㅎ
URL은 프로토콜 / 호스트명 / 포트번호 / 패스 가 기본적으로 포함되어있을텐데 프로토콜이 우리가 아는 http 그부분이다. 그게 웹 서버와 안전하게 연결해주는 매개체인 것이다. 호스트명은 말 그대로 웹 페이지를 호스팅 해주는 서버의 주소로 구글이나 네이버와 같은 서버들을 말한다. 포트번호는 https의 기본 포트인 443이라고 알려주셨고, 패스는 그 서버에서 어떤 요청을 하는 것인지 알려주는 것이라고한다.
HTTP요청은 크게 GET / POST / PUT / DELETE 네가지가 있는데
GET : 뭔가 보여달라는 요청
POST : 새로운 정보를 보내거나 주문하기
PUT : 이미 있는 정보를 수정
DELETE : 정보를 삭제
가 있고 추가적으로 PATCH / HEAD / OPTIONS / CONNECT / TRACE 도 있다.
위의 요청을 보냈을때 응답으로 받을 수 있는 상태 코드로는
2xx / 3xx / 4xx /54xx가 있는데 각각 완료 / 서버이동 / 요청오류 / 서버오류 로 나뉜다.
마지막으로 Spring Boot의 설정을 짧게 들었는데 build.gradle 파일의 내용을 수정해서 프로젝트 설정, 의존성 관리, 플러그인 등등 여러가지 기능을 한번에 추가&삭제 할 수 있다고 배웠다.
오늘은 여러가지를 배우고 숙련 주차 강의를 지급받았지만 나의 템포에 맞게 수업 내용을 탄탄히 복습하고 입문주차를 꼼꼼히 체크하고 넘어가야겠다고 생각했고 팀 과제를 받기 전까지 입문주차 개인과제를 내 힘으로 해내보려한다. 화이팅하자!
'일기' 카테고리의 다른 글
2023.11.09. (0) | 2023.11.09 |
---|---|
2023.11.08. (0) | 2023.11.08 |
2023.11.06. (0) | 2023.11.06 |
2023.11.03. (0) | 2023.11.03 |
2023.11.02. (0) | 2023.11.02 |