接触Spring不久 ,准备用ssm框架做个资料管理平台,在做资料列表展示的时候,遇到了按条件查询分页时,点击下一页的时候条件丢失的问题。在思考很久之后,想到了用@SessionAttributes注解来解决。
当按条件查询的时候,查询到的结果往往不止一页,那么这个时候我们的查询条件就需要跨页面使用,这个时候如果条件是在requset域中,点击下一页的时候,条件就会消失,那么我们就需要把条件放在session中。通过@SessionAttributes注解,可将指定属性从request中加到session中。注:@SessionAttributes需添加在类上
@Controller
@RequestMapping("file")
@SessionAttributes("queryCondition")
public class FileController {
@Autowired
private FileService fileService;
//分页
@RequestMapping("tofilelist")
public String page(HttpServletRequest request, QueryBean queryBean, QueryCondition queryCondition){
if (request.getSession().getAttribute("querycondition")==null){
request.getSession().setAttribute("querycondition",queryCondition);
}
QueryCondition querycondition =(QueryCondition) request.getSession().getAttribute("querycondition");
queryBean.setGroupName(querycondition.getGroupName());
queryBean.setTureFileName(querycondition.getTureFileName());
Page<FileList> page = fileService.getFileListByQueryBean(queryBean);
request.setAttribute("page",page);
return "index";
}
刚接触Spring mvc,写的渣渣代码,勿喷,哈哈