Web MVC框架示例

表单

@Controller

public class StudentController {

   @RequestMapping(value = "/student", method = RequestMethod.GET)

   public ModelAndView student() {

      return new ModelAndView("student", "command", new Student());

   }  

   @RequestMapping(value = "/addStudent", method = RequestMethod.POST)

   public String addStudent(@ModelAttribute("SpringWeb")Student student,

   ModelMap model) {

      model.addAttribute("name", student.getName());

      model.addAttribute("age", student.getAge());

      model.addAttribute("id", student.getId());     

      return "result";

   }

}

----

<form:form method="POST" action="/HelloWeb/addStudent">

   <table>

    <tr>

        <td><form:label path="name">Name</form:label></td>

        <td><form:input path="name" /></td>

    </tr>

    <tr>

        <td><form:label path="age">Age</form:label></td>

        <td><form:input path="age" /></td>

    </tr>

    <tr>

        <td><form:label path="id">id</form:label></td>

        <td><form:input path="id" /></td>

    </tr>

    <tr>

        <td colspan="2">

            <input type="submit" value="Submit"/>

        </td>

    </tr>

</table> 

</form:form>

 

页面重定向

@Controller

public class WebController {

   @RequestMapping(value = "/index", method = RequestMethod.GET)

   public String index() {

       return "index";

   }  

   @RequestMapping(value = "/redirect", method = RequestMethod.GET)

   public String redirect() {    

      return "redirect:finalPage";

   }  

   @RequestMapping(value = "/finalPage", method = RequestMethod.GET)

   public String finalPage() {    

      return "final";

   }

}

 

静态页面

@Controller

public class WebController {

   @RequestMapping(value = "/index", method = RequestMethod.GET)

   public String index() {

       return "index";

   }  

   @RequestMapping(value = "/staticPage", method = RequestMethod.GET)

   public String redirect() {    

      return "redirect:/pages/final.htm";

   }

}

----

    <mvc:resources mapping="/pages/**" location="/WEB-INF/pages/" />

    <mvc:annotation-driven/>

 

异常处理

@Controller

public class StudentController {

   @RequestMapping(value = "/student", method = RequestMethod.GET)

   public ModelAndView student() {

      return new ModelAndView("student", "command", new Student());

   }

   @RequestMapping(value = "/addStudent", method = RequestMethod.POST)

   @ExceptionHandler({SpringException.class})

   public String addStudent( @ModelAttribute("HelloWeb")Student student,

      ModelMap model) {

      if(student.getName().length() < 5 ){

         throw new SpringException("Given name is too short");

      }else{

       model.addAttribute("name", student.getName());

      }    

      if( student.getAge() < 10 ){

         throw new SpringException("Given age is too low");

      }else{

       model.addAttribute("age", student.getAge());

      }

      model.addAttribute("id", student.getId());

      return "result";

   }

}

----

<bean class="org.springframework.web.servlet.handler.

      SimpleMappingExceptionResolver">

   <property name="exceptionMappings">

      <props>

         <prop key="com.tutorialspoint.SpringException">

            ExceptionPage

         </prop>

      </props>

   </property>

   <property name="defaultErrorView" value="error"/>

</bean>

 

posted @ 2018-04-19 20:00  AaronCnblogs  阅读(145)  评论(0)    收藏  举报