본문 바로가기

Spring boot

Spring boot 끄적끄적(3)

반응형

 

스프링 공부하면서 배운 것들 총 집합~~

타임리프 th:value와 th:field의 충돌

<input type="text" th:field="*{board}" th:value = "${session.member.name}"> 이렇게 쓰려고 하니 session.member.name값이 출력이 안되었다. 알고보니 두 문법이 충돌되서 value가 무시된다고 한다.

 

HTML a 태그는 GET 방식 밖에 못 쓴다

이유는 모르겠다 그렇단다

 

@RequestMapping

 

 

 공통적인 url은 class에 @RequestMapping 으로 설정해 줄 수 있다!!

@RestController
@RequestMapping(value = "/hello")
public class HelloController {

    @GetMapping()
    public String helloGet(...) {
        ...
    }

    @PostMapping()
    public String helloPost(...) {
        ...
    }

    @PutMapping()
    public String helloPut(...) {
        ...
    }

    @DeleteMapping()
    public String helloDelete(...) {
        ...
    }
}

이런식으로!!

 

소켓 통신

  • TCP 통신은 언제 사용하는가?
    • 연속성보다 신뢰성이 중요한 전송을 필요로 하는 프로토콜에서 사용된다. 채팅, 파일 전송과 같은 경우가 될 수 있다
    • 데이터가 전송된 순서대로 도착하도록 보장합니다. UDP보다는 느립니다.
  • UDP 통신은 언제 사용하는가?
    • 신뢰성보다는 연속성이 중요한 실시간 스트리밍과 같은 서비스에서 사용될 수 있다.
    • 데이터그램이 전송된 순서대로 도착하지 않을 수 있습니다.
    • 또한 데이터그램이 손실되거나 중복되거나, 순서가 바뀌어 도착할 수 있습니다.
  • 스프링 프레임워크에서 웹소켓을 사용하는 경우, 이는 TCP 기반 이라고 합니다.
  • TCP 연결을 통해 양방향 통신을 유지합니다.
  • 사용하기 위해서는 의존성 추가, ConfigClass, 핸들러 이렇게 3가지를 작성 해주면 됩니다.
  • (http://start.spring.io/) 시작 할 때 WebSocket 종속성 추가 시켜 줘야 합니다.

웹소켓이란??

웹소켓(WebSocket)은 클라이언트와 서버(브라우저와 서버)를 연결하고 실시간으로 통신이 가능하도록 하는 첨단 통신 프로토콜이다. 웹소켓은 하나의 TCP 접속에 전이중(duplex) 통신 채널을 제공한다.

  • 결국 스프링 웹소켓을 쓴다는 건 TCP를 쓴다는 뜻이라고 생각합니다.
반응형

'Spring boot' 카테고리의 다른 글

SpringBoot TDD 끄적끄적  (0) 2024.07.21
Spring Boot 끄적끄적(4)  (0) 2024.07.18
NoSQL vs SQL  (0) 2024.07.16
Spring boot 끄적 끄적(2)  (1) 2024.07.09
왜 HTTP Status Code를 사용해야하는가??  (0) 2024.07.08