@Controller
注解表示页面可以跳转
@ResponseBody
@RequestMapping(“aa”)
public String to(){
return aa;
}
表示访问url地址为http:loalhost:8080/aa
返回页面数据为aa
如果去掉@ResponseBody注解
那么
@RequestMapping(“aa”)
public String to(){
return “aa”;
}
跳转到的是aa.html
重定向页面地址:
@RequestMapping(“aa”)
public String to(){
return “redirect:ddd”;
}
重定向到url方法 http:localhsot:8080/ddd
访问到相应的Controller方法
return “redirect:…/ddd”;
比如是在http:localhsot:8080/aa/ddd
下的访问,想要访问http:localhsot:8080/ddd
就return “redirect:…/ddd”;
@Autowied
private Service service;
service.调用方法
package cn.zhibang.controller;
import cn.zhibang.model.User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.io.PrintWriter;
import java.util.Map;
@Controller
public class AController {
/*1.接收地址传递的参数*/
/*2.接收form表单提交的参数*/
/*3.接收ajax请求的参数*/
/*通过HttpServletRequest接收参数*/
/*@RequestMapping("/a")
public ModelAndView getParam(HttpServletRequest request){
System.out.println("测试");
String name = request.getParameter("name");
System.out.println(name);
ModelAndView mv = new ModelAndView();
mv.setViewName("success");
return mv;
}*/
/*通过方法的参数接收传递的数据*/
/*@RequestMapping("/a")
public ModelAndView getParam(String name){
System.out.println("测试");
System.out.println(name);
ModelAndView mv = new ModelAndView();
mv.setViewName("success");
return mv;
}*/
/*通过@RequestParam获取*/
/*@RequestMapping("/a")
public ModelAndView getParam(@RequestParam("name1") String name){
System.out.println("测试");
System.out.println(name);
ModelAndView mv = new ModelAndView();
mv.setViewName("success");
return mv;
}*/
/*动态获得参数*/
/*@RequestMapping("/a/{names}")
public ModelAndView getParam(@PathVariable("names") String name){
System.out.println("测试");
System.out.println(name);
ModelAndView mv = new ModelAndView();
mv.setViewName("../success");
return mv;
}*/
/*接收表单数据
@RequestMapping("/b")
public ModelAndView getParam(User user){
System.out.println("测试");
System.out.println(user);
ModelAndView mv = new ModelAndView();
mv.setViewName("success");
return mv;
}*/
/*接收ajax请求数据*/
/*@RequestMapping("/b")
//public ModelAndView getParam(String uname, String upwd){
public void getParam(User user, PrintWriter out){
System.out.println("测试");
//System.out.println(uname+"\t"+upwd);
System.out.println(user);
//将对象、集合转换成JSON对象
out.print("123");
out.flush();
out.close();
}*/
@RequestMapping("/c")
@ResponseBody
public User getParam(){
System.out.println("测试");
User u = new User();
u.setUname("admin");
u.setUpwd("123456");
//调用Service层中的方法
return u;
}
/*@RequestMapping("/abc")
public String geta(){
return "success";
}*/
// @RequestMapping("/abc")
// public String geta(Model model){
// model.addAttribute("name", "张三");
// String name =(String)model.asMap().get("name");
// return "success.jsp";
// }
// @RequestMapping("/abc")
// public String geta(Map map){
// map.put("user", "李四");
// String name = (String)map.get("user");
// return "success";
// }
// @RequestMapping("/abc")
// public String geta(HttpSession session, HttpServletRequest request){
// request.getServletContext(); //application
// return "success";
// }
// @ResponseBody
// @RequestMapping("/abc")
// public String geta(Model model, String type){ //确保请求参数的安全性,正确性
// model.addAttribute("name", "张三");
//
// return "redirect:success.jsp"; //重定向的方式进行跳转
// }
}
package cn.zhibang.controller;
import cn.zhibang.model.User;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
@Controller
public class BController {
//@RequestMapping(value = "/orders", method = RequestMethod.GET)
@GetMapping("/orders")
public String getA(Model model) throws Exception{
System.out.println("只能是get请求方式才执行该方法");
List<User> users = new ArrayList<>();
//初始化10个用户对象
for (int i = 0; i < 10; i++) {
User user = new User();
user.setUname("张三"+i);
user.setUpwd("123");
users.add(user);
}
model.addAttribute("users", users);
return "list";
}
//@RequestMapping(value = "/orders", method = RequestMethod.POST)
@PostMapping(value = "/orders")
public String getB() throws Exception{
System.out.println("只能是post请求方式才执行该方法");
return "success";
}
@GetMapping(value = "/order")
public String getc() throws Exception{
return "add";
}
@PostMapping(value = "/order")
public String getd(User user) throws Exception{
System.out.println(user);
//执行dao方法的insert into语句
return "redirect:/orders";
}
@DeleteMapping("/order/{id}")
public String gete(@PathVariable("id") Integer uid) throws Exception{
System.out.println(uid);
//调用dao方法,传参要删除的ID
return "redirect:/orders";
}
}
package cn.zhibang.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
// http://localhost:8080/user
@Controller
@RequestMapping("/user")
public class UserController {
// http://localhost:8080/springmvc/user/hello
//@GetMapping("/hello")
//@PostMapping("/hello")
@RequestMapping("/hello")
public ModelAndView hello(HttpServletRequest request){
System.out.println("hello。。。。");
//ModelAndView 模型和视图
ModelAndView mv = new ModelAndView();
//设置model:表示mv对象中的一个容器,用于存放数据
mv.addObject("user", "张三");
//设置view:表示该方法执行完后,跳转的页面
mv.setViewName("../success");
return mv;
}
// http://localhost:8080/springmvc/abc
@RequestMapping("/abc")
public void abc(){
System.out.println("abc13.....");
}
}
public String to(Model model,ModelAndView mv,Map map){
// 三种作用域方式
return “”;
}