윤재에요 2023. 5. 23. 09:57

서블릿에서는 주소매핑시 @WebServlet을 사용하고 스프링에서는 @RequestMapping을 사용한다.

@RequestMapping(value"/주소", method=ReuqestMethod.POST) 등으로 사용가능하며

스프링4.3부터는 @GetMapping, @PostMapping등으로 좀 더 간단하게 사용할 수 있다. 

클래스에 붙이는 @RequestMapping을 이용하면 URL의 공통부분을 생략할 수있다.

@Controller // ctrl+shift+o 자동 임포트 
@RequestMapping("/register")
public class RegisterController {
//	@RequestMapping(value="/register/add", method=RequestMethod.GET) // 신규회원 가입
	@GetMapping("/add") // 4.3부터 추가
	public String register() {
		return "registerForm";  // WEB-INF/views/registerForm.jsp
	}
	
//	@RequestMapping(value="/register/save", method=RequestMethod.POST) // 신규회원 가입
// 	@PostMapping("/register/save")
	@PostMapping("/add")
	public String save(@ModelAttribute("user") User user, Model m) {
		if(!isValid(user)) {
			String msg = URLEncoder.encode("id를 잘못입력하셨습니다.", "utf-8");
			
			m.addAttribute("msg", msg);
			return "redirect:/register/add"; // 신규회원 가입화면으로 이동(redirect)
		}
		
		return "registerInfo";
	}

	private boolean isValid(User user) {
		return false;
	}
	
}

 

 

URL패턴

 

 

 

 

댓글수0