BaseController.java 2.58 KB
package com.cnlive.shenhe.controller;

import com.cnlive.shenhe.bean.SessionUser;
import org.springframework.ui.Model;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class BaseController {


    /**
     * 得到request对象
     */
    public HttpServletRequest getRequest() {
        HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
        return request;
    }

    /**
     * 得到response对象
     */
    public HttpServletResponse getResponse() {
        HttpServletResponse response = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getResponse();
        return response;
    }

    /**
     * 得到session对象
     */
    public HttpSession getsession() {
        HttpSession session = this.getRequest().getSession();
        return session;
    }


    /**
     * 获取session中的用户
     *
     * @return
     */
    public SessionUser getSessionUser() {
        SessionUser sessionUser = (SessionUser) this.getsession().getAttribute(SessionUser.getSessionKey());
        return sessionUser;
    }

    /**
     * 设置用户session
     */
    public void setSessionUser(SessionUser sessionUser) {
        this.getsession().setAttribute("", null);
    }

    /**
     * 设置报错页面显示信息——站点查询失败
     *
     * @param model
     */
    public void setmodelSite(Model model) {
        model.addAttribute("errorMessage", "站点查询失败,不存在此站点,请重新查询!");
        model.addAttribute("remindMessage", "提示:站点查询请输入全称,不支持模糊查询");
    }

    /**
     * 设置报错页面显示信息——参数校验失败
     *
     * @param model
     * @param value 不能为空的参数
     */
    public void setmodelParam(Model model, String value) {
        model.addAttribute("errorMessage", "参数传递不能为空!" + value);
        model.addAttribute("remindMessage", "提示:请检查所传参数,存在非空参数未赋值");
    }

    /**
     * 设置报错页面显示信息——入库结果失败
     *
     * @param model
     */
    public void setmodelResult(Model model) {
        model.addAttribute("errorMessage", "数据入库失败,请重试!");
        model.addAttribute("remindMessage", "提示:如连续两次以上入库失败,请联系开发人员");
    }


}