웹 & 프레임워크

Spring을 이용하면 객체자체 VO를 값으로 보내버릴수있다!

늘근이 2014. 5. 25. 22:43

항상 getParameter가 사람을 미치게 하지 않던가.

스트링에서 int값으로 변환해주는 작업이야말로, 맥도날드에서 패티를 굽는 일과 별로 다를바가 없는것이다.


Spring에서는 setter가 관습대로 잘 정해져있는다는 전제로,



 

@RequestMapping("/person/hello.do")

                  public String helloName(Person person, Model model){

                                   model.addAttribute("message","Hello" + person.getName() + person.getAge());

                                   return "hello";

                  }

 

                 

 

package com.gorakgarak.vo;

 

public class Person {

                  private String name;

                  private int age;

                 

                  public String getName() {

                                   return name;

                  }

                  public void setName(String name) {

                                   this.name = name;

                  }

                  public int getAge() {

                                   return age;

                  }

                  public void setAge(int age) {

                                   this.age = age;

                  }

                 

                 

}

  

--------------------------------참고! 다음페이지에서 바로 그 객체 받아서 쓰기-----------------------------------

                  @RequestMapping("/person/hello.do")

                  public String helloName(Person person){   //@ModelAttribute("myPerson") Person person으로 매개변수 주면 더 정확하네

                                   //이렇게만 해도 넘어간다!! 받은게 그대로 넘어감! person 넘어감.

                                   return "confirmPerson";

                  }

 

 

 ------xml--------- 대신 @modelAttribute로 넘겼을때는 쌍따옴표 안에 이름으로 뺀다. ${myPerson.name} 이런식

 

<body>

                  <h2>입력하신 정보는 다음과 같습니다.</h2>

                  <h3>이름 : ${person.name }</h3>   

                  <h3>나이 : ${person.age }</h3>

</body>

</html>