session取值

另外一个是关于Session取值的

代码如下

@Controller
@SessionAttributes(value="user")
@RequestMapping("/session")
public class SessionController {
 
    @RequestMapping(method=RequestMethod.GET)     
    public String setUser(ModelMap map){ 
        User user=new User(); 
        user.setAddress("xxx"); 
        user.setUserName("yyy");
        map.put("user", user);
        return "request/userForm";
    }
                
    @ResponseBody
    @RequestMapping(value="getUser",method=RequestMethod.GET)
    public String getUser(@ModelAttribute("user")User user){
           System.out.println(user.getUserName());
           return user.getUserName();
    }
 
}
在Controller上加上注解@SessionAttributes(value="user"),再使用ModelMap的put方法(非addAttribute方法),然后在getUser方法中,使用@ModelAttribute("user")即可取得session中的user对象


Maven依赖:


            4.0.5.RELEASE
            3.1.0
            1.2
            1.4.7
            1.3.1
            1.9.13


           
           
                        org.codehaus.jackson
                        jackson-mapper-asl
                        ${jackson}
           

           
           
                        org.springframework
                        spring-webmvc
                        ${springframework}
           

           
           
                        javax.servlet
                        javax.servlet-api
                        ${servlet}
           

           
           
                        jstl
                        jstl
                        ${jstl}
           

           
           
                        com.thoughtworks.xstream
                        xstream
                        ${xstream}
           


Spring配置

@EnableWebMvc// 启用SpringMVC
@ComponentScan(basePackages = "org.xdemo.example.springmvc")// 配置包扫描路径
@Configuration// 启用注解式配置
//继承WebMvcConfigurerAdapter可以是我们可以重写一些资源或者一些处理器
public class AppConfig extends WebMvcConfigurerAdapter {
 
               /**
                * 设置资源路径
                */
               @Override
               public void addResourceHandlers(ResourceHandlerRegistry registry) {
                      registry.addResourceHandler("/resources/**").addResourceLocations("/resources/").setCachePeriod(31556926);
               }
 
               /**
                * 设置默认的Servlet请求处理器
                */
               @Override
               public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
                      configurer.enable();
               }
 
               /**
                * 设置视图解析器,以及页面路径
                * 
                * @return
                */
               @Bean
               public InternalResourceViewResolver getInternalResourceViewResolver() {
                               InternalResourceViewResolver resolver = new InternalResourceViewResolver();
                               resolver.setPrefix("/WEB-INF/views/");
                               resolver.setSuffix(".jsp");
                               return resolver;
               }
                
               /**
                * 配置消息转换器
                */
               @Override
               public void configureMessageConverters(
                      List> converters) {converters.add(converter());
                                
               }
                
               /**
                * JSON格式的支持,这个很重要,只有加上这个JSON的消息转换器,才能够支持JSON格式数据的绑定
                * @return
                */
               @Bean
               public MappingJacksonHttpMessageConverter converter() {
                              MappingJacksonHttpMessageConverter converter = new MappingJacksonHttpMessageConverter();
                               return converter;
               }
 
}

你可能感兴趣的:(session取值)