본문 바로가기
spring boot

정적 컨텐츠 / 템플릿 엔진 / API

by 신방동불주먹 2023. 1. 25.

#스프링입문 


스프링 웹개발 기초
정적 컨텐츠 - 서버 동작 없이 파일을 웹브라우저에 그대로 내려줌
템플릿엔진 - jsp, php html을 서버에서 동적으로 바꿔서 내려줌
API - json데이터 포맷으로 클라이언트에 데이터를 보내는 것 
뷰, 리액트 사용시에도 api 방법을 많이 사용. 서버끼리 통신시에도 사용
 
*1) 정적 컨텐츠 :* 
스프링에서 제공. Static content
Static 폴더에서 찾아서 제공한다. 


*2. mvc와 템플릿 엔진*
템플릿 엔진을 mvc형식으로 쪼깨서 vue html을 이용해서
렌더링된 html을 클라이언트에 전달

 


Name=“spring” 을 Url 파라미터로 전달해야 한다.
Command p -> description (Require=true가 default)


3. API 방식
@GetMapping(“hello-string”)
@ResponseBody -> *response의 http body부에 직접 넣어주겠다*
public String helloString(@RequestParam(“name”) String name){
    return “hello” + name; //name=spring -> hellospring
}

View 템플릿을 조작하는방식
Api -> 문자 그대로를 내려줌 (html x)
Command + n -> 단축키




//json 방식으로 결과 return
@GetMapping(“hello-api”)
@ResponseBody
public Hello helloApi(@RequestParam(“name”) String name){
    Hello hello = new Hello();
    hello.setName(name);
    return hello;
}

static class Hello{
    private String name;
    public void setName(String name) {
        this.name = name;
    }
    public String getName() {
        return name;
    }
}


**@RequestBody 에 객체가 오는경우
httpMessageConver에 의해 json 형식으로 반환된 단순 문자열일겨우 string converter가 동작
Jackson(spring 기본),  gson -> *객체를 Json로 만들어준다*



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

yaml 파일  (0) 2023.02.28
빌드관리도구(Maven / Gradle)  (0) 2023.01.25
프로젝트 빌드,실행  (0) 2023.01.25
View 환경설정(Thymeleaf)  (0) 2023.01.25
프로젝트 생성(start.spring.io)  (0) 2023.01.25