1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.shiro.samples.spring.web;
20
21 import org.apache.shiro.SecurityUtils;
22 import org.springframework.stereotype.Component;
23 import org.springframework.web.bind.annotation.RequestMapping;
24 import org.springframework.web.bind.annotation.RequestMethod;
25 import org.springframework.web.servlet.ModelAndView;
26 import org.springframework.web.servlet.mvc.AbstractController;
27
28 import javax.servlet.http.HttpServletRequest;
29 import javax.servlet.http.HttpServletResponse;
30
31
32
33
34
35
36
37 @Component
38 @RequestMapping("/s/logout")
39 public class LogoutController extends AbstractController {
40
41 @RequestMapping(method = RequestMethod.GET)
42 protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) throws Exception {
43 SecurityUtils.getSubject().logout();
44 return new ModelAndView("redirect:login");
45 }
46 }