221019 죽순 Day11

chloe·2022년 10월 19일
0
post-thumbnail

Day011

Controller 복습

home.html 페이지 띄우기 했음
복습 자체는 문제 없었는데 몇가지 오류나는 원인 해결했다

application.xml 파일명 충돌때문에 자꾸 에러 났었던 거!!!
xml 파일 파일명 바꿔주고
BeanConfig파일에서 @ImportResource("classpath:application-config.xml") 요 부분도 수정해줌

Application.java 파일에
메인 메소드 안에 제일 마지막줄에
SpringApplication.run(BasicApplication.class, args);
자동 생성되는데 그거 없어서 구동 안됐었음
(뭐여 나 삭제 안 했는데...?🤷‍♀️)

MVC 패턴? 모델?

Controller에서 주로 사용되는 어노

응답 처리 방법

메소드 반환 타입이 String일 경우

@Controller
public class HtmlController {    

    @GetMapping ("html/string") // @requestMapping(method = RequestMethod.GET) 과 같은 의미
    public String string () {
        return "html/string"; //html 폴더 안에 있는 string파일 보여죠
    }
}

메소드 반환 타입이 void일 경우

@Controller
public class HtmlController {  

    @GetMapping ("html/void")
    public void htmlVoid() {
        // return 없음
    }
}

메소드 반환 타입이 map일 경우

@Controller
public class HtmlController {

    @GetMapping ("html/map")
    public Map<String, Object> htmlMap(Map <String, Object> map) {
        Map <String, Object> map2 = new HashMap<String, Object>();
        return map2;
    }
}

메소드 반환 타입이 model일 경우

@Controller
public class HtmlController {

    @GetMapping ("html/model")
    public Model htmlModel (Model model) {
        return model;
    }   
}

메소드 반환 타입이 model and view일 경우

@Controller
public class HtmlController {

    @GetMapping ("html/modelAndView") 
    public ModelAndView htmlModelAndView() {
        ModelAndView mav = new ModelAndView();
        mav.setViewName ("html/model_and_view");
        return mav;
    }    
}

메소드 반환 타입이 object일 경우

@Controller
public class HtmlController {

    @GetMapping ("html/object")
    public Member htmlObject() {
        Member member = new Member ();
        member.setName("최은진");
        member.setUserId("chloe");
        return member;
    }    
}

// 아직 정리 못함

@ResponseBody 사용하여 응답 처리

메소드 반환 타입이 string인 경우

메소드 반환 타입이 map인 경우

메소드 반환 타입이 obj인 경우

메소드 반환 타입이 list인 경우

연습문제

연습문제1 getmapping으로 html/exam 보기

연습문제2 json 데이터 응답하기

요청 처리 방법

요청 종류
GET 데이터 가져와 (글 읽어)
POST 데이터 저장 (글 써!)
PUT 데이터 수정 (게시글 수정해)
DELET 데이터 삭제 (글 삭제해)

GET 요청

데이터를 가져오는 것
@GetMapping

POST 요청

데이터를 저장하는 것
@PostMapping

0개의 댓글

관련 채용 정보