Spring/Spring framework

Spring 기초

원2 2021. 7. 28. 16:24
728x90
반응형
  • MVC 기본 구조

Controller 기본

  • ** 어노테이션에 value 값을 설정해줘야한다.

home.jsp 기본
실행은 여기서
실행화면 ㅇㅇ
Home.jsp


  • RandomController


  • FormController

GET방식은 막아둬서 뜸 POST만 받아 해둠
POST는 값이 받아진다 ㅇㅇ


  • MemberController

 

confirmId, confirmId1
confirmId.jsp

	@RequestMapping(value = "member/confirmId")
	public String confirmId (HttpServletRequest req, Model model) {
		String id = req.getParameter("id");
		String pwd = req.getParameter("pwd");
//		System.out.println(id + pwd);
		model.addAttribute("id",id);
		model.addAttribute("pwd",pwd);
		return "member/confirmId";
	}
	
	@RequestMapping(value = "member/confirmId1")
	public String confirmId1 (@RequestParam("id") String id, @RequestParam("pwd") String pwd, Model model) {
		model.addAttribute("id",id);
		model.addAttribute("pwd",pwd);
		return "member/confirmId";
	}

  • join, joinForm

joinForm도 Controller 에서 호출해야한다

	@RequestMapping(value = "member/joinForm")
	public String joinForm () {
		return "member/joinForm"; // member/loginForm호출
	}
	
	
//	이게 기본방식
	@RequestMapping(value = "member/join", method = RequestMethod.POST)
	public String join (@RequestParam("id") String id, @RequestParam("pwd") String pwd, @RequestParam("name") String name, @RequestParam("email") String email, Model model) {
		MemberDto dto = new MemberDto();
		dto.setId(id);
		dto.setPwd(pwd);
		dto.setName(name);
		dto.setEmail(email);
		model.addAttribute("member", dto);
		return "member/join";
	}

	
//	@ModelAttribute : request, MemberDto 객체를 생성
//	자동적으로 setter가 호출
//	@ModelAttribute >> model.addAttribute("member", dto); 이게 자동으로실행된거임
//	이게 최신방식 ㅇㅇ 위에꺼랑 같은 기능인데 코드가 짧고 간결
	@RequestMapping(value = "member/join1", method = RequestMethod.POST)
	public String join1 (@ModelAttribute("member") MemberDto member) {
		return "member/join";
	}

joinForm.jsp


  • Student ( jsp 에서 값을 바로 받아오는 형식의 출력)ㅇㅇ

main.jsp에서 href에 값을 넣었음 ㅇㅇ 그걸 받아와서 출력

	@RequestMapping(value = "member/student/{studentId}/{num}")
	public String student(@PathVariable String studentId, @PathVariable int num, Model model) {
		model.addAttribute("studentId", studentId);
		model.addAttribute("num", num);
		return "member/student";
	}


  • getPostForm

	@RequestMapping(value = "member/getPostForm")
	public String getPostFrom () {
		return "member/getPostForm"; // member/getPostForm.jsp 호출
	}
	
	@RequestMapping(value = "member/goGet", method = RequestMethod.POST)
	public String goMethod (@RequestParam("id") String id, Model model) {
		model.addAttribute("id",id);
		return "member/goGet"; //goGet.jsp 호출
	}
	
	@RequestMapping(value = "member/goPost", method = RequestMethod.POST)
	public ModelAndView goMethod (@RequestParam("id") String id) {
		ModelAndView mv = new ModelAndView();
		mv.addObject("id",id); // model 이랑 같은 기능
		mv.setViewName("member/goGet"); // "member/goGet"; 이랑 같은 기능 ㅇㅇ호출용
		return mv; // mv리턴
	}

getPostForm.jsp
goGet.jsp
GET, POST 방식
POST  방식만 허용해서 get 방식은 처리되지않음
POST 방식은 정상적으로 처리되는 모습


여기는 그냥 메모

7/28
1.RandomController, random.jsp 구현
2.Maven (lib 관리 FW), Gradle
  - pom.xml에서 설정
  - https://mvnrepository.com
  - lombok 추가
  - https://blog.naver.com/simba222/222244019792
3.Dto 구현 (com.bit.myapp.dto 패키지명)
4.web.xml 한글처리
(filter, filter-mapping 추가)
5.form.jsp 전송
728x90
반응형