MainController는 웹 애플리케이션에서 사용자의 요청을 처리하는 주요 컨트롤러입니다. 여기서는 AI를 활용한 기능과 메인페이지, Kakao map을 사용하는 페이지를 연동합니다.
package tomato.classifier.controller;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import tomato.classifier.data.ResultData;
import tomato.classifier.dto.DiseaseDto;
import tomato.classifier.service.TomatoService;
@Controller
@Slf4j
public class MainController {
private final TomatoService tomatoService;
public MainController(TomatoService tomatoService) {
this.tomatoService = tomatoService;
}
@GetMapping("/")
public String mainView() {
return "main/mainPage";
}
@PostMapping("/resultprocess")
public String resultView(@RequestBody ResultData data){
tomatoService.saveTomato(data);
return "redirect:/result";
}
@GetMapping("/result")
public String resultView2(Model model){
DiseaseDto createdDto = tomatoService.result();
model.addAttribute("dto", createdDto);
return "main/resultPage";
}
@GetMapping("/map")
public String Map() {
return "map/map";
}
}