일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 리스트 관리
- ORA-00600
- 리스트
- WAS 환경
- tomcat
- spring properties
- Spring Boot
- spring boot batch
- drag&drop
- mybatis
- spring boot scheduler
- Maven #POM.XML
- flashback
- tomcat 세팅
- Spring
- Today
- Total
Hello World?
Spring Boot Restful 서비스 개발 본문
Spring Boot 를 활용하여 웹 서비스를 만들어 보자
필요한 것은 이클립스와 이클립스에 설치된 STS 툴이다 구글링을 통해서 가지고 있는 이클립스에 STS를 설치하도록 하자..
준비되었다면 프로젝트를 생성하도록 하겠다.
1. File - New - Project 를 클릭하여 스프링 부트 스타터 프로젝트를 선택한다
2. 스프링 스타터 프로젝트 설정창이다
Name, Group, Artifact 를 입력한 후 next를 클릭한다
3. WebService만 체크하고 피니쉬 버튼을 누른다. ( Spring Boot Version을 2.0.1 로 세팅해도 된다 )
Finish를 누른다
4. 위와 같이 작업을 진행하면, 프로젝트가 생성이 된다. 프로젝트를 생성했을때 오류가 발생한다면 pom.xml 에
spring boot 버젼을 낮춰준다
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
<relativePath/>
<!-- lookup parent from repository -->
</parent>
5. 반환을 json 타입으로 반환하기 위해 아래 pom파일 처럼 depengeny들을 추가해준다
<!-- JSON 반환을 위한 jackson 라이브러리 추가 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
</dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20180130</version>
</dependency>
6. 서버의 포트 설정 및 JSON 반환을 위해 application.properties를 아래와 같이 수정하자
#sefver port setting
server.port=8080
#jackson setting
spring.jackson.mapper.default-view-inclusion=true
spring.jackson.deserialization.fail-on-unknown-properties=true
#http encording
spring.http.encoding.charset=UTF-8
7. 이제 다왔다. RestController만 생성하자
kr.test 아래에 controller 패키지 생성후 TestController 를 생성하고 아래 소스를 입력하자
package kr.test.controller;
import org.json.JSONObject;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
@RestController public class TestController {
/**
* 인삿말을 반환한다
* @return json 형식의 값을 반환한다
*/
@ResponseBody @RequestMapping(value = "/hello", method = RequestMethod.GET)
public String hello() {
JSONObject obj = new JSONObject();
obj.put("result", "OK" );
obj.put("hello", "안녕하세요?");
return obj.toString();
}
}
8. 서비스를 시작하면 8080 포트로 서비스가 시작되는걸 볼수 있다
위 로그를 보면 8080으로 내장 톰켓 웹 서버가 구동된걸 볼수 있다
기본적인 웹 서비스 개발은 끝났다. 테스트를 해보도록 하자~!
브라우져에 http://localhost:8080/hello 을 입력하면, 아래와 같이 보이면 완료된다.
{"result":"OK","hello":"안녕하세요?"}
이상 기본적인 웹 서비스를 개발해 보았다. 위 소스는 샘플을 개발한 것일뿐, 사실상 security authentication 같은 정보들은 빠져있다.
다음에는 보안처리가 들어간 웹 서비스를 개발해 보도록 하자
'JAVA WEB > SPRING' 카테고리의 다른 글
Controller에서 Service 호출하여 JSON 정보 조회 (0) | 2018.08.09 |
---|---|
Spring Boot 배치프로그램 개발 5(MySQL + logback) (0) | 2018.07.02 |
Spring Boot 배치프로그램 개발 4 (MySQL + logback) (0) | 2018.07.02 |
Spring Boot 배치프로그램 개발 3 (MySQL + logback) (0) | 2018.07.02 |
Spring Boot 배치프로그램 개발 2 (MySQL + logback) (0) | 2018.07.02 |