摘要
本钻孔数据管理系统采用B/S架构,数据库是MySQL,网站的搭建与开发采用了先进的Java语言、Hadoop、数据可视化技术进行编写,使用了Spring Boot框架。该系统从两个对象:由管理员和用户来对系统进行设计构建。用户主要功能包括:用户注册、登录、浏览钻孔信息、地层信息、进行个人中心管理等,并本系统在一般钻孔数据管理系统的基础上增加了数据可视化技术,让管理员可以快速查看钻孔信息各数据统计图,非常方便。 本系统采用的数据库是MySQL,使用Java、Hadoop、数据可视化技术技术开发。在设计过程中,很好地发挥了该开发方式的优势,让实现代码有了良好的可读性,而且使代码的更新和维护更加的方便,操作方便,对以后的维护减少了很多麻烦。系统的顺利开发和实现,对于钻孔数据管理这一方面提供巨大的便利服务,无论是用户还是管理员,都带来了极大的便利,方便大众,为社会的进步与发展提供了一些动力。
绪论
1.1背景及意义 随着社会的快速发展,计算机的影响是全面且深入的。目前,社会的各种类型的网站越来越多,但是有些类型的网站附加了太多的商业元素和虚假信息,而且,用户在搜索相关信息时需访问多个网站和大量垃圾广告,这无疑影响了信息搜索效率且降低了用户的使用体验,使用户很难快速地浏览或查询到自己所需要的相关信息。电子计算机在现代管理中的应用使电子、计算机变成了人类运用现代信息技术的主要工具。可以更高效的处理人类获取信息中精细化、全面化的问题,从而提高了效率[2]。本系统使用具有独特且和资源相对优势的管理方式,来提供一个优秀的钻孔数据管理系统,用户可以在网站浏览钻孔信息和地层信。而随着互联网的应用,互联网也以一种巨大变革力的新形象出现于商务关系领域。 探究根本课题,就是希望能够实现用户和所需信息双方的双向选择,便于用户查找相应信息的同时也可以节省管理员在管理中花费的人力和物力。
1.2 国内外研究概况 在当前飞速发展的时代,无论是国内还是国外,发展都是突飞猛进的,经济形势也是一片明朗。在这种背景下,互联网的这一块的市场成为了各个国家想要争夺的香饽饽。于是无论是国内还是国外一些公司把目光投向了互联网这块市场,越来越多的人对互联网有所了解,具备了一些网络意识。在这种互联网大浪潮的不断冲刷下,各种各样的系统被开发出来。计算机技术无论是在国内还是国外中应用普遍,使计算机这一新型工具成为人们耳熟能详、妇孺皆知的新技术。计算机和互联网的广泛应用,让国内外的距离变"近"了,这个庞大的地球家园一下变成了地球村。国内国外的互联网发展也存在一些差距,我国近些年的互联网发展迅速,跻身于世界前列。 本系统采用B/S架构、采用的数据库是MySQL,使用Java技术开发。该系统的开发方式无论在国内还是国外都比较常见,而且开发完成后使用普遍,可以给用户提供大量的便利[3]。该系统在国内外前景较为良好。
1.3 研究的内容 钻孔数据管理系统是一个便于用户浏览钻孔信息和地层信息而进行管理的平台。因此本文主要阐述了系统实现的功能和完整开发的过程,结合Web开发技术实现了一个钻孔数据管理系统。本系统以软件工程理论作为开发的理论基础,[4]以专业的计算机编程语言实现系统的功能与开发。 该选题原则上力求采用标签模块分类等方法,来完成注册、登录、对钻孔信息管理、用户管理、对页面的设置和对后台数据库中数据的增删查改等一系列的操作和运行等。在这一系列模块分类的功能下,达到对钻孔数据管理系统信息的高效执行和规范管理。
相关技术
2.1 Java简介 Java主要使用了CORBA技术和安全模型,主要是在网络使用的信息保障上。它还带来了对EJB(Enterprise Java Beans)的完全支援[6],Java SERVLET API,JSP(Java Server Pages),还有XML技术等多进步。
2.2 Spring Boot框架 现如今后台开源框架主流的有SSH、SSM、Spring Boot,但是SSH、SSM框架的环境配置项较多,而Spring Boot主要的设计思想就是约定大于配置,故而SpingBoot在设计时几乎达到零配置。Spring Boot整合了业界上的开源框架。具体采用技术框架描述如下: (1)Mybatis:Mybatis:提供自动映射,动态SQL,级联,缓存,注解,代码和SQL分离等特性,使用方便,同时也对SQL进行优化[10]。 (2)SpringMVC:通过一套MVC注解,让POJO成为处理请求的控制器,无需实现任何接口,同时,SpringMVC还支持REST风格的URL请求[11]。 (3)Spring Boot:从本质上来说,Spring Boot就是Spring,它做了那些没有它你也会去做的Spring Bean配置[12]。 Spring Boot是一款非常强大后台框架,因为Spring Boot开发时可以基本不用写配置文件,所以使用Spring Boot搭建网站的后台环境,在Spring Boot的yml配置文件中写入项目启动端口,项目就可以启动。项目的Java文件还有静态文件都是由Spring Boot来管理。
2.3 Idea开发环境 IDEA 全称IntelliJ IDEA,是用于java语言开发的集成环境(也可用于其他语言),IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS整合、代码审查、 创新的GUI设计等方面的功能可以说是超常的[8]。 2.4 Hadoop技术 1. Hadoop Common:Hadoop体系最底层的模块(基础模块),为Hadoop各子项目提供系统配置工具Configuration、远程过程调用RPC、序列化机制和日志操作等。 2. HDFS:Hadoop Distributed File System是具有高度容错性的文件系统,适合部署在廉价机器上。HDFS提供高吞吐量的数据访问,非常适合大规模数据集上的应用。 3. YARN:Yet Another Resource Negotiator是统一资源管理和调度平台,解决了上一代Hadoop资源利用率低和不兼容异构计算框架等多种问题,提供资源隔离方案和双调度器的实现。 4. MapReduce:一种编程模型,利用函数式编程思想,将数据集处理过程分为Map和Reduce两个阶段,非常适合进行分布式计算。支持Java、C++、Python、PHP等多种语言。
2.5 MySQL数据库 MySQL是一种关系型的数据库管理系统,属于Oracle旗下的产品。MySQL的语言是非结构化的,使用的用户可以在数据上进行工作。这个数据库管理系统一经问世就受到了社会的广泛关注。在各个方面,与同等的数据库相比,MySQL的优点极为突出,它的运行速度快,适用的范围广泛,而且数据库的安全性这一方面独树一帜。在语言a结构方面,MySQL的语言简单,其他数据库需要一大段代码来实现的操作,MySQL仅需要一小部分代码甚至几行。综上所述,MySQL这种关系型数据库管理系统,已经成为了开发者进行项目的数据开发、存储的不二之选。MySQL的功能也多种多样,如数据操纵和数据库的建立维护等。而且该数据库的数据共享性高、冗余度低而且容易扩充。MySQL在安全性这一方面也具有自身的特点,它应用了用户的标识和鉴别技术,对试图和数据进行加密,确保资料信息的可靠性。介于数据库系统的功能与强大等性质之间,本数据库系统的设计中主要使用了MySQL实现对数据的处理。基于Web的钻孔数据管理系统运用MySQL数据库,在Web应用这一块,MySQL是最好的选择。对于该系统整个的开发、搭建、运行和维护具有极其重要的作用[9]。
2.6 数据可视化简介 可视化是一个认知的过程,目的在于对事物的洞悉观察,而不是绘制的可视化结果本身。数据显示是数据分析后发送结果和请求的过程,是一个报警过程。大数据分析结果之间的相关性更为复杂。传统的展示方式已经不能满足当今社会的需要。大数据的出现带来了更直观、更清晰的表现形式。可视化技术的参考是其中的一个重要部分。他的作用也体现在很多方面,揭示很多想法和对应关系,形成论点或者意见,观察事物的演变趋势,探索性的分析数据。 以对于中央电化教育馆教育信息技术研究2018年度立项课题清单的分析为例,进行需求分析以及可视化表达。首先要对清单内数据进行一系列处理,我们可以大概从课题内容分析、按学段进行分析、或者对同一地区课题方向进行分析。那么我将针对课题内容进行分析,目的为得到当前年度热门课题的关键词都有哪些,明确当下教育热点,以便为下一步教育的发展做铺垫。既然要从课题内容进行分析,那么第一步就是对整个清单内的数据进行处理,对课题进行一个分词处理,也就是对关键词进行提炼,有效关键词的获取是分析的最重要的基础,在这一部分,由于是教育方面的课题研究,因此我将引用专业领域词库,并设定一些停用词,在使关键词的划分更加准确的同时,能够减少关键词的数量,让提取出来的关键词在质量上得到保证。其次就是对关键词进行统计,最终以可视化图表的形式呈现出想要的结果。 从宏观的角度来讲,可视化的三大功能之一就是信息记录,将浩瀚烟云的信息记录成文,最有效的方法之一就是信息成像,因此,为了达到最终的分析目的,使杂乱无章的占比数据以一种更加直观、简明清晰的视图效果展现出来,对数据进行系统的分析之后,将最终结果进行可视化处理,便能够显而易见的看出当前的热点话题。
系统整体功能图

用户注册界面图

用户登录界面图

用户功能界面图

管理员登录界面图

管理员功能界面图

看板界面图

部分数据库表
|-----------------------------|-----------|-----|-----------|----|-------------------|
| 字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
| id | bigint | | 主键 | 主键 | |
| addtime | timestamp | | 创建时间 | | CURRENT_TIMESTAMP |
| bianhao | varchar | 200 | 编号 | | |
| dicengmingcheng | varchar | 200 | 地层名称 | | |
| zuankongmingcheng | varchar | 200 | 钻孔名称 | | |
| xzuobiao | varchar | 200 | X坐标 | | |
| yzuobiao | varchar | 200 | Y坐标 | | |
| gaizuankongchudedicenghoudu | varchar | 200 | 该钻孔处的地层厚度 | | |
| dingbugaocheng | varchar | 200 | 顶部高程 | | |
| dibugaocheng | varchar | 200 | 底部高程 | | |
|-----------------------------|-----------|-----|-----------|----|-------------------|
| 字段名称 | 类型 | 长度 | 字段说明 | 主键 | 默认值 |
| id | bigint | | 主键 | 主键 | |
| addtime | timestamp | | 创建时间 | | CURRENT_TIMESTAMP |
| bianhao | varchar | 200 | 编号 | | |
| dicengmingcheng | varchar | 200 | 地层名称 | | |
| zuankongmingcheng | varchar | 200 | 钻孔名称 | | |
| xzuobiao | varchar | 200 | X坐标 | | |
| yzuobiao | varchar | 200 | Y坐标 | | |
| gaizuankongchudedicenghoudu | varchar | 200 | 该钻孔处的地层厚度 | | |
| dingbugaocheng | varchar | 200 | 顶部高程 | | |
| dibugaocheng | varchar | 200 | 底部高程 | | |
结论
经过这几个月的努力,在老师和同学的帮助与指导下,对系统顺利完成。对于该系统的研究和开发虽然没有耗费大量的时间,但为了成功完成该钻孔数据管理系统,消耗了大量的精力和汗水去了解学习这方面涉及到的专业知识以及开发环境的应用。 该系统的设计与实现,是经过了很长时间的分析、观察、调研和研究分析并整理资料实施的。钻孔数据管理系统采用B/S架构、Java开发语言、Hadoop技术、Spring Boot框架以及MySQL数据库等技术开发与设计。该系统主要分为用户和管理员个角色。该钻孔数据管理系统分为管理员和用户两大部分。用户主要功能是浏览钻孔信息和地层信息、管理个人信息和登录密码等。后端的主要任务是对数据的一些准备处理的工作,对于用户和管理员两者的数据属性的添加、维护和修改。每个功能在完成各自任务的同时也相互合作,一起来处理各个任务以及进程。 尽管该系统对用户可以满足一些基本的钻孔数据管理系统的需求,但该系统还存在寻多问题和有待完善的地方。主要分为以下两点: