1 package com.krry.web;
2
3 import javax.servlet.http.HttpServletRequest;
4
5 import org.springframework.stereotype.Controller;
6 import org.springframework.ui.ModelMap;
7 import org.springframework.web.bind.annotation.ModelAttribute;
8 import org.springframework.web.bind.annotation.PathVariable;
9 import org.springframework.web.bind.annotation.RequestMapping;
10 import org.springframework.web.servlet.ModelAndView;
11
12 import com.fasterxml.jackson.annotation.JsonTypeInfo.Id;
13
14 import bean.User;
15
16
17 @Controller
18 @RequestMapping("/model")
19 public class ModelMapController extends BaseController {
20 /********参数获取的方式**************************/
21
22 //http://localhost/krryxa/model/hanlder/1.html
23 @RequestMapping("/handler/{id}")
24 public String handler(@PathVariable("id")Integer id){
25 //获得参数id为1
26 return "redirect:/success.jsp";
27 }
28
29 //http://localhost/krryxa/model/handler2.html?id=5
30 @RequestMapping("/handler2")
31 public String handler2(Integer id){
32 //获得参数id为5
33 System.out.println(id);
34 return "redirect:/success.jsp";
35 }
36
37 //通过对象的的注入方式最好
38 //http://localhost/krryxa/model/handler3.html?username=1351
39 @RequestMapping("/handler3")
40 public String handler3(User user){
41 //获得参数username为1351
42 System.out.println(user.getUsername());
43 return "redirect:/success.jsp";
44 }
45
46 //http://localhost/krryxa/model/handler4.html?id=5
47 @RequestMapping("/handler4")
48 public String handler4(@ModelAttribute("teacher")User user){//若sessiong域中teacher改变了,这里也会改变
49 //获得参数id为5
50 System.out.println(request.getParameter("id"));
51 return "redirect:/success.jsp";
52 }
53
54
55
56 /**作用域的问题reuqest session application 以下作用域的范围都是:request**/
57
58 //在index页面直接用${message}获取
59 @RequestMapping("/handler7")
60 public String handler7(ModelMap map){
61 //这里是map的addAttribute设置
62 map.addAttribute("message", "我爱你吗。你们爱我我吗");
63 return "model/index";
64 }
65
66 //在index页面直接用${message}获取
67 @RequestMapping("/handler5")
68 public String handler5(){
69 request.setAttribute("message", "我爱你吗。你们爱我我吗");
70 return "model/index";
71 }
72
73 //在index页面直接用${message}获取
74 @RequestMapping("/handler6")
75 public ModelAndView handler6(){
76 //视图和作用域融合体
77 ModelAndView modelAndView = new ModelAndView();
78 modelAndView.setViewName("model/index"); //跳转到这个页面
79 modelAndView.addObject("message", "是打发是大法师的发送到发士大夫阿什顿");
80 return modelAndView;
81 }
82 //在index页面直接用${user.username}获取
83 @RequestMapping("/handler8")
84 public String handler8(@ModelAttribute("user")User user){
85 user.setUsername("ModelAttribute 我爱你吗。你们爱我吗");
86 return "model/index";
87 }
88
89
90 }