티스토리 뷰
・스프링 @RequestParam, @RequestBody 차이
client측 parameter 2개이상일경우
- @RequestParam(@RequestParam String name)
form태그전달 name : jun
json형식 : Error(Body를 통해 데이터 전달하는 json일경우 에러발생)
객체형식 불가
- @RequestBody(@RequestBody String req)
form태그전달 req : name=jun&age=13
json형식 : json형식 그대로 받음({"name":"jun", "age":13})
객체형식 : 객체getter, setter, 변수 일치시 해당 객체로 그대로 받아짐
※출처: https://ocblog.tistory.com/49
・스프링 MediaType
웹의 동작은 request와 response로 구성됨
클라이언트(브라우저)측에서 요청(request)한것을 서비스(서버)측에서 받은 뒤 결과값을 응답(response)함
이때 클라이언트측에서 어떤타입으로 보낼지 명시하는것이 Content-type
서버측에서 어떤타입으로 받을지 명시하는것이 Accept
스프링에서는 서버측이므로 서버입장에서 봤을때 클라이언트로 부터 받을 타입을 정하는 파라미터가 consumes
클라이언트측으로 보낼 응답값을 무슨타입으로 할지 정하는 파라미터가 produces
즉,
클라이언트(브라우저) | 서비스(스프링) |
Content-type (서버로 보낼 타입) | consumes (클라이언트에서 받을 타입) |
Accept (서버로 부터 받을 타입) | produces (클라이언트로 보낼 타입) |
여기서 이 타입은 application/json, image/png 등 종류가 엄청많은데 이러한 상수값들을 불러 쓰기 좋게 스프링에서 정리한것이 MediaType
※출처:https://pozafly.github.io/spring/MediaType/
・@Service 어노테이션 의미
서비스어노테이션을 붙였을시 루트 컨테이너에 Bean생성해줌
데이터값이 변하는 VO(DTO)는 Bean생성하면 안됨
@Controller @Repository @Service 등은 어노테이션 붙일시 Bean생성되고
@Autowired @Quilfier등으로 Bean을 가져 올수있다.
※https://codevang.tistory.com/258
추가질문
〇서블릿이란
사용자 요청에 대해 동적으로 작동하는 웹 어플리케이션 컴포넌트.
서블릿은 자바로 구현된 CGI라고 말한다.
CGI(Common Gate Interface)란 웹서버와 어플리케이션 사이에 교환방식
〇서블릿컨테이너란
서블릿 생성, 소멸 등 서블릿 생명주기를 관리해주는 컨테이너
〇스프링동작구조
https://www.youtube.com/watch?v=2pBsXI01J6M
https://codevang.tistory.com/248
〇객체지향 5원칙 : SOLID
- SCP(Single reponsibility principle) - 단일 책임 원칙
한 클래스는 하나의 책임, 기능만 가진다. 응집도는 높이고 결합도는 낮출수있다.
- OCP(Open Close Principle) - 개방폐쇄의 원칙
기존 구성요소는 수정이 일어나지 말아야 하며 쉽게 확장 가능하여 재사용할수있어야함
클래스 설계시 변할부분과 변하지 않을부분을 명확히 구분해야함
- LSP(the Liskov Substitution Principle) - 리스코브 치환의 원칙
서브클래스가 확장에 대한 인터페이스를 준수해야함을 의미
부모클래스 상속받아서 오버라이드 할시 기존 메소드 의미 해치지 않도록
- ISP(Interface Segregation Principle) - 인터페이스 분리의 원칙
기능별로 인터페이스를 나눈다. 중복해서 사용하지 않는다.
- DIP(Dependency Inversion Principle) - 의존성 역전의 원칙
의존성 주입
・자바 메모리 관리
-
https://devkingdom.tistory.com/226
・쓰레드란 무엇인가
https://ko.wikipedia.org/wiki/%EC%8A%A4%EB%A0%88%EB%93%9C_(%EC%BB%B4%ED%93%A8%ED%8C%85)
・프로세스란 무엇인가
'오늘의 질문' 카테고리의 다른 글
2020년 10월 6일 (0) | 2020.10.06 |
---|
- Total
- Today
- Yesterday
- nginx multiple domain
- 누가_쏙쏙_바로바로_알려줄사람_어디없나
- velocity
- VelocityPluginImages
- 후감소
- 연산자
- 선증가
- 일본 비비고
- 선감소
- 일본 장터
- 엔진엑스 ssl 멀티도메인 404
- 일본 한인마트
- 엔진엑스 멀티도메인 404에러
- 자바책
- 일본 만두
- string
- 후증가
- StringBuilder
- 자바
- 벨로시티
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |