>
浅谈三层架构
2021-01-30 15:37
C#
  • 592
  • 527
  • 64
  • 51

三层架构区分层次的目的是为了 “高内聚,低耦合”。开发人员分工更明确,将精力更专注于应用系统核心业务逻辑的分析、设计和开发,加快项目的进度,提高了开发效率,有利于项目的更新和维护工作。

三层架构有哪些:

 1.数据访问层(DAL):

 2.业务逻辑层(BLL):

 3.表现层(UI):

三层架构的作用:

 1.数据访问层(DAL):该层所做事务直接操作数据库,针对数据的增,删,查,改等。

 2.业务逻辑层(BLL):针对具体问题的操作,对数据业务逻辑处理。是表示层和数据访问层之间的连接关系。

 3.表现层(UI):展现给用户的界面,用于显示数据和接受用户输入的数据。

接下来我们就实际用三层架构来实现一个登录:

首先创建数据访问层:

这个时候我们首先创建一个验证用户的接口:

 1.数据访问层(DAL):

接口代码:

 public interface IData
    {
        /// <summary>
        /// 管理员登录
        /// </summary>
        /// <param name="user">管理员信息</param>
        bool UserLogon(Users user);
    }

接口创建完成以后 这个时候就要写管理员登录的实现接口:

管理员登录接口实现代码:

        /// <summary>
        /// 实现管理员登录功能
        /// </summary>
        /// <param name="user"></param>
        /// <returns></returns>
        public bool UserLogon(Users user)
        {
            return adminLogon(user);
        }
         /// <summary>
        /// 验证管理员的信息
        /// </summary>
        /// <param name="user"></param>
        /// <returns></returns>
        private bool adminLogon(Users user)
        {
            bool result = false;
            ///处理结果......此处省略
            return result;
        }

 2.业务逻辑层(BLL):

代码如下:

            ///// <summary>
        ///// 后台逻辑层
        ///// </summary>
        private static volatile platform _platform;
        private static readonly object lockObj = new object();
        public static platform aidePlatform
        {
            get
            {
                if (_platform == null)
                {
                    lock (lockObj)
                    {
                        if (_platform == null)
                            _platform = new platform();
                    }
                }
                return _platform;
            }
        }

接下来就实现构造函数platfrom:

构造函数代码:

         private IData _IData;
        #region 构造函数
        /// <summary>
        /// 构造函数
        /// </summary>
        //public platform()
        //{
        //    _IData = new DALhandle();
        //}
        #endregion
        /// <summary>
        /// 管理员登录
        /// </summary>
        /// <param name="user">管理员信息</param>
        /// <returns></returns>
        public bool UserLogon(Users user)
        {
            return _IData.UserLogon(user);
        }

这样就完成了DAL 和BLL

UI功能只有去调用BLL这样就实现了三层架构 逻辑清晰明了。

表现层(UI)调用:

  Users user = new Users();
  user.UserID = 001;
  user.Username = "001";
  user.Password = "001";
  bool msg = BLLHandle.aidePlatform.UserLogon(user);
  //根据数据处理返回的值来进行处理返回给前端就可以啦



全部留言 ()
返回
顶部