转发以及重定向
package cn.kgc.mvc.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.SessionAttribute;
import org.springframework.web.bind.annotation.SessionAttributes;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@Controller
@RequestMapping("fr")
@SessionAttributes({"username"})
public class FRController {
@RequestMapping("f1")
public void test01(HttpServletRequest request , HttpServletResponse response)throws ServletException , IOException {
System.out.println("转发到index.jsp");
request.getRequestDispatcher("/index.jsp").forward(request,response);
}
@RequestMapping("f2")
public void test02(HttpServletRequest request , HttpServletResponse response)throws ServletException , IOException {
System.out.println("重定向到index.jsp");
response.sendRedirect(request.getContextPath() + "/index.jsp");
}
@RequestMapping("f3")
public String test03(){
System.out.println("test03()");
return "index";
}
@RequestMapping("f4")
public String test04(){
System.out.println("test04()");
return "redirect:/index.jsp";
}
@RequestMapping("f5")
public String test05(){
System.out.println("test05()");
return "forward:/fr/f3";
}
@RequestMapping("f6")
public String test06(){
System.out.println("test06()");
return "redirect:/fr/f4";
}
@RequestMapping("f7")
public ModelAndView test07(ModelAndView mv){
mv.setViewName("index");
mv.addObject("username","tom");
return mv;
}
@RequestMapping("f8")
public String test08(ModelAndView mv){
mv.addObject("username","tom");
return "index";
}
@RequestMapping("f9")
public String test09(ModelAndView mv){
mv.addObject("username","tom");
return "redirect:/index.jsp";
}
@RequestMapping("f10")
public String test10(HttpServletRequest request){
request.getSession().setAttribute("username","lucy");
return "redirect:/index.jsp";
}
@RequestMapping("f11")
public String test11(Model model){
model.addAttribute("username","lucy");
model.addAttribute("code","adc");
return "redirect:/index.jsp";
}
@RequestMapping("f12")
public String test12(@SessionAttribute("code") String code){
System.out.println("code = " + code);
return "redirect:/index.jsp";
}
}
JSON
public class JSONController {
@RequestMapping("j1")
@ResponseBody
public User test01(){
System.out.println("ajax请求已接收");
User user = new User();
user.setUsername("tom");
user.setPassword("123");
user.setAge(20);
return user;
}
@RequestMapping("j2")
@ResponseBody
public User test02(@RequestBody User user){
System.out.println("user = " + user);
return user;
}
}
json.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>发送和接收json格式的数据</title>
<script src="jquery-1.11.1.js" type="text/javascript"></script>
</head>
<body>
<button id="btn">点击发送ajax请求</button>
<button id="btn2">点击发送ajax请求携带json格式数据</button>
<script type="text/javascript">
$(function () {
// 编写发送ajax逻辑代码
$('#btn').click(function () {
$.ajax({
url:'/mvc/json/j1',
dataType:'json',
type:'post',
success:function (res) {
console.log(res)
}
})
})
$('#btn2').click(function () {
$.ajax({
url:'/mvc/json/j2',
data:JSON.stringify(user={
username:'jack',
password:'123',
age:20
}),
contentType:'application/json;charset=utf-8',
dataType:'json',
type:'post',
success:function (res) {
console.log(res)
}
})
})
})
</script>
</body>
</html>