관심쟁이 영호

[Spring Boot 기초]ㅣ HTTP 값 주고 받기, Get방식, Post방식 본문

Bank-End/Spring Boot

[Spring Boot 기초]ㅣ HTTP 값 주고 받기, Get방식, Post방식

관심쟁이 영호 2021. 4. 3. 15:38
반응형

http에서 값을 주고 받는 방법은 많다.

오늘은 값을 주고 받는 연습을 할 예정이다.

 

가장먼저 Get부분 부터다!

 

Get으로 값을 주고 받는다는 뜻은,

우리가 URL에다가 이렇게 입력을 할 수 있다.

-> http://localhost:8080/http/get?id=1&password=123

여기서 우리가 주목해야될 부분은 get 다음부터다.

 

id=1, password=123으로 값을 넘겨주었고,

자바코드에서 해당하는 값을 받을 수 있다.

그럼 어떻게 받아야하나?

 

그 방법은 아래 코드를 보자.

// Get

	//인터넷 브라우저 요청은 무조건 Get 요청만 할 수 있다.
	// http://localhost:8080/http/get?id=1&password=123 (select)
    
	@GetMapping("/http/get")
	public String getTest(@RequestParam int id, @RequestParam String password) {
		return "get 요청" + "id = " +id + "- password ="+ password;
	}

http://localhost:8080/http/get으로 GetMapping을 하였고,

@RequestParam으로 넘어오는 인자값을 지정해주었다.

 

그래서 id, password를 넘겨줄 수가 있었고

그 값으로 자바코드를 통해 원하는 조작을 할 수 있다.

이렇게 각각 넘겨줄 수 있고 한번에 넘겨줄 수도 있다.

 

그 방법은

//인터넷 브라우저 요청은 무조건 Get 요청만 할 수 있다.
	// http://localhost:8080/http/get?id=1&password=123 (select)
	@GetMapping("/http/get")
	public String getTest(Member m) {
		return "get 요청" + "id = " +m.getId() + "- password ="+ m.getPassword();
	}

이렇게 해줄 수 있다.

Spring에서 id와 password를 자동으로 인식하고 해당하는 객체를 만들어 주나보다!

 

Post방식을 살펴보자.

post는 get과는 다르게, URL을 통한 정보 전송이 되지않고,

요청 속에 있는 BODY에 포함되어 해당 정보가 넘어가게 된다.

 

똑같이 해서 코드로 살펴보면,

// POST

	// http://localhost:8080/http/post (insert)
	@PostMapping("/http/post")
	public String postTest(Member m) {
		return "post요청" + m.getId() + m.getPassword();
	}

url은 이전의 get과는 다르게 id와 password가 날라가지않는다.

보이지 않는것일뿐, 바디에 담아서 넘겨주게된다.

 

body로 보낼 수 있다는 건,

json, text, image 등등 모든 타입으로 보낼 수가 있는 것이다.

 

json으로 보내면, 이전에 포스팅했던 MessageConverter가 일을 하는 것이다!

 

 

 

300x250
Comments