基于webgis的诗人轨迹系统

17 篇文章 0 订阅
2 篇文章 0 订阅

MVC是一种软件设计模式,它将应用程序分成三个主要组成部分:模型,视图和控制器。

MVC的目的是将应用程序的业务逻辑,用户界面和用户输入分离开来,从而提高代码的可维护性和可重用性。 详细解释 MVC模式的三个组成部分分别是:

1. 模型(Model):模型是应用程序的核心,它代表应用程序的数据和业务逻辑。模型通常包括数据访问对象、实体类和业务逻辑类等。模型的主要职责是处理数据和提供业务逻辑,但它并不知道任何关于用户界面或控制器的信息。

2. 视图(View):视图是用户界面的呈现方式,它通常由HTML、CSS和JavaScript等技术实现。视图负责显示数据,但不处理数据或业务逻辑。视图是与模型和控制器分离的,它只是显示数据,不会对数据进行任何修改。

3. 控制器(Controller):控制器是应用程序的协调者,它负责处理用户输入并更新模型和视图。控制器接收用户输入并根据输入调用相应的模型和视图。控制器是模型和视图之间的桥梁,它将用户输入转换为模型的操作,并将模型的结果传递给视图进行显示。

后台核心代码:

    private static SqlDataReader GetDataReader(string sql)
        {
            try
            {
                //Open
                if (conn.State == ConnectionState.Closed)
                {
                    conn.Open();
                }
                //command object
                SqlCommand cmd = new SqlCommand(sql, conn);
                sdr = cmd.ExecuteReader();
                return sdr;
            }
            catch (Exception)
            {
                if (!sdr.IsClosed)//Data flow shutdown
                {
                    sdr.Close();
                }
                throw;
            }
        }
        /// <summary>
        /// Return the number of affected rows 
        /// Add, delete, modify
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        public static int ExecuteNonQuery(string sql)
        {
            try
            {
                //open
                //Judgment status
                if (conn.State == ConnectionState.Closed)
                {
                    conn.Open();
                }
                //command object
                SqlCommand cmd = new SqlCommand(sql, conn);
                int n = cmd.ExecuteNonQuery();
                if (conn.State == ConnectionState.Open)
                {
                    conn.Close();
                }
                return n;
            }
            catch (Exception)
            {

                throw;
            }
        }
        /// <summary>
        /// Data Flow List
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="sdr"></param>
        /// <returns></returns>
        private static List<T> DataReaderToList<T>(SqlDataReader sdr)
        {
            Type t = typeof(T);//Get Type
            PropertyInfo[] p = t.GetProperties();
            //Definition collection
            List<T> list = new List<T>();
            //Traverse Data Flow
            while (sdr.Read())
            {
                //create object
                T obj = (T)Activator.CreateInstance(t);
                //Number of data flow columns
                string[] sdrFileName = new string[sdr.FieldCount];
                for (int i = 0; i < sdr.FieldCount; i++)
                {
                    sdrFileName[i] = sdr.GetName(i).Trim();
                }
                foreach (PropertyInfo item in p)
                {
                    //Determine whether the attributes in the Model are in the column names of the stream
                    if (sdrFileName.ToList().IndexOf(item.Name) > -1)
                    {
                        if (sdr[item.Name] != null && sdr[item.Name] != DBNull.Value)
                        {
                            item.SetValue(obj, sdr[item.Name]);//Object attribute assignment
                        }
                        else
                        {
                            item.SetValue(obj, null);//Object attribute assignment
                        }
                    }
                    else
                    {
                        item.SetValue(obj, null);//Object attribute assignment
                    }

                }
                list.Add(obj);
            }
            return list;
        }

 

基于webgis诗意中国系统
技术路线:C#,SQL server,arcgis api for js

在线网站:http://124.221.114.164:8002/index.html
主要模块
地点展示,作者展示,诗人轨迹,统计分析

地点展示:点击地点展示查看在此地创作的诗歌
作者展示:介绍作者创作的诗歌,查看诗歌内容和创作地
诗人轨迹:记录诗人一声的轨迹图
统计分析:统计初唐,中唐,盛唐,晚唐等时代诗歌创作情况,以及创作热力图

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_29857473

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值