如何freeMarker将List放进session中,利用@SessionAttributes

本人用的是ssm框架,所以查了一下资料,了解到了关于Spring MVC 的@SessionAttributes

首先说一下@SessionAttributes的用法
@SessionAttributes 只能作用在类上,作用是将指定的Model中的键值对添加至session中,方便在下一次请求中使用。

具体格式就是在类上加以下代码

@SessionAttributes(value = {"apply"})

当然,大多数文章都是写关于值的问题,很少有关于List,其实list跟值放进session也是一样的道理

@Controller
@RequestMapping("apply")
@SessionAttributes(value = {"applyList","collegeList","teacherList","userList"})
public class ApplyController {
    @Autowired
    private ApplyService applyService;
    @Autowired
    private CollegeService collegeService;
    @Autowired
    private TeacherService teacherService;
    @Autowired
    private UserService userService;
    /**
     *
     * @author 天线宝宝
     */
    @RequestMapping("noPass")
    public String noPass(Model model, HttpServletRequest request, HttpServletResponse response) {
    	//这四个List都是从数据库中得到数据
        List<ApplyBednum> applyList = applyService.selectAll();

        List<College> collegeList = collegeService.selectAll();

        List<Teacher> teacherList = teacherService.selectAll();

        List<Uuser> userList = userService.selectAll();

        model.addAttribute("applyList", applyList);
        model.addAttribute("collegeList", collegeList);
        model.addAttribute("teacherList", teacherList);
        model.addAttribute("userList", userList);
		//将数据返回到noPass页面
        return "manager/noPass";
    }

注意我类名称上面写得是什么!!!!!! 此时此刻已经将这四个list放入了session了!

你可能以为我会在noPass页面得到数据,肯定不是!noPass页面肯定能得到数据,我想要的是在另一些页面得到这些List,这才是我要将list放入session的目的。

我在这里面没有从数据库中获取任何数据,我目的就是要在Pass访问这些list

/**
 
     * @author 天线宝宝
     */
    @RequestMapping("Pass")
    public String Pass(Model model, HttpServletRequest request){
        return "manager/Pass";
    }

在noPass页面写freemark语句时,idea会提示list语句出来,但是当时我在pass页面写freeMark语句的时候,idea没有任何提示,但是我尝试了一下,就算没有提示也写进去,最后成功了!

在这里插入图片描述

这都会报各种找不到list的提示,不理会,写下去就是了!
结果会成功的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值