MVC中对controller的抽象

简介:

将所有controller的公共属性和方法提取出来,放到一个controller基类里,共其它controller使用,这无疑不是一个好的选择,以下是我的项目中controller层的抽象,分享一下代码:

/// <summary>
    /// Controller基类
    /// </summary>
    public abstract class ControllerBase : Controller
    {

        #region Fields

        #endregion

        #region Constructor

        #endregion

        #region Properties
        /// <summary>
        /// 通用信息(一般由service层返回的)
        /// </summary>
        protected Entity.VMessage VMessage { get; set; }
        #endregion

        #region Protected Consts
        /// <summary>
        /// 每页显示的记录数
        /// </summary>
        protected const int PAGESIZE = 10;
        #endregion

        #region Protected virtual Properties
        /// <summary>
        /// 查询器属性
        /// </summary>
        protected virtual Entity.VPredication vp { get; set; }
        /// <summary>
        /// 分页结构属性
        /// </summary>
        protected virtual Entity.PagingParam pp { get; set; }
        #endregion

        #region Protected virtual Methods
        /// <summary>
        /// 操作后,显示的提示成功或失败的信息
        /// author:zzl
        /// </summary>
        /// <param name="msg">提示信息,操作成功或操作失败</param>
        /// <param name="url">点击返回列表后,所进入的地址</param>
        /// <returns></returns>
        protected virtual string DisplayMsg(string msg, string url)
        {
            string message = string.Format("<div style='color:red;font-size:14px;background:rgb(244,250,251);border:rgb(187,221,229) 1px solid;margin:3px;padding:3px'>{0},<a href='{1}'>返回列表</a></div>", msg, url);
            return message;
        }
        protected virtual string DisplayMsg(string msg)
        {
            string message = string.Format("<div style='color:red;font-size:14px;background:rgb(244,250,251);border:rgb(187,221,229) 1px solid;margin:3px;padding:3px'>{0}</div>", msg);
            return message;
        }
        #endregion

   #endregion

    }

本文转自博客园张占岭(仓储大叔)的博客,原文链接:MVC中对controller的抽象,如需转载请自行联系原博主。

目录
相关文章
|
前端开发 Java 数据安全/隐私保护
深入理解 Spring MVC Controller —— 请求参数获取
前言 接上篇《深入理解 Spring MVC Controller —— 请求映射》,上篇主要介绍了处理器方法及请求映射的定义。有了处理器方法 Spring MVC 就可以对请求进行处理,有了请求映射 Spring MVC 就能知道哪些请求应该由哪些处理器方法来处理。
803 0
深入理解 Spring MVC Controller —— 请求参数获取
|
11月前
|
XML 前端开发 JavaScript
SpringMVC中单独配置<mvc:default-servlet-handler/> 导致 Controller失效
SpringMVC中单独配置<mvc:default-servlet-handler/> 导致 Controller失效
271 0
|
设计模式 JSON 前端开发
2021-08-11Spring MVC,入门项目搭建及流程,springMVC的适配器和映射器,基于注解的controller,映射请求,方法返回值,requestmapping注解
2021-08-11Spring MVC,入门项目搭建及流程,springMVC的适配器和映射器,基于注解的controller,映射请求,方法返回值,requestmapping注解
58 0
|
前端开发 Java Spring
《Spring MVC》 第三章 @Controller、@RequestMapping 注解和获取请求参数
《Spring MVC》 第三章 @Controller、@RequestMapping 注解和获取请求参数
195 0
|
前端开发 Java Spring
spring mvc 一次请求如何映射到对应的controller 如何规避冲突
spring mvc 一次请求如何映射到对应的controller 如何规避冲突
146 0
|
前端开发 Java 索引
Spring MVC Controller 方法参数 Map 的实现类是什么?
问题 题主问题描述如下: 在SpringBoot中,Controller的参数中有Map接口类型的,请问他的实现类是什么? 突发奇想,在SpringBoot中,Controller的参数中有Map接口类型的
402 0
Spring MVC Controller 方法参数 Map 的实现类是什么?
|
XML JSON 前端开发
深入理解 Spring MVC Controller —— 请求映射
前言 基于注解的 Spring MVC 的项目中,Controller 应该是我们接触最多的类了,这里提到的 Controller 并非是某一个具体的接口或类,而是一种概念,只要我们我们定义的类中包含了处理请求的方法,这个类就可以称为 Controller,而处理请求的方法被称为处理器方法。
897 0
深入理解 Spring MVC Controller —— 请求映射
|
设计模式 安全 前端开发
面试官:Spring MVC 如何保证 Controller 的并发安全性?面试必问。。
单例模式(Singleton)是程序设计中一种非常重要的设计模式,设计模式也是Java面试重点考察的一个方面。
326 0
面试官:Spring MVC 如何保证 Controller 的并发安全性?面试必问。。
|
前端开发 Java Spring
HandlerMethodArgumentResolver(一):Controller方法入参自动封装器(将参数parameter解析为值)【享学Spring MVC】(下)
HandlerMethodArgumentResolver(一):Controller方法入参自动封装器(将参数parameter解析为值)【享学Spring MVC】(下)
HandlerMethodArgumentResolver(一):Controller方法入参自动封装器(将参数parameter解析为值)【享学Spring MVC】(下)
|
前端开发 Java Spring
HandlerMethodArgumentResolver(一):Controller方法入参自动封装器(将参数parameter解析为值)【享学Spring MVC】(上)
HandlerMethodArgumentResolver(一):Controller方法入参自动封装器(将参数parameter解析为值)【享学Spring MVC】(上)
HandlerMethodArgumentResolver(一):Controller方法入参自动封装器(将参数parameter解析为值)【享学Spring MVC】(上)