系统相关技术
本健康管理系统系统运用了很多的开发工具以及以java为基础的开发语言,在后台的代码编写中主要运用了Java、springboot;前台的设计中运用了vue等一些开发语言;通过idea来编写这些程序;用mysql进行数据库的设计与分析;
2.1 JAVA简介
Java作为一种计算机编程语言,其在企业网络和Internet环境的应用更是十分广泛,现在已成为Internet中最受欢迎、最有影响的编程语言之一。其最大的特点就是面向对象,这种面向对象的程序设计更接近我们的思维方式,相对于面向过程的程序设计,它最大的优点就是可扩展性和可维护性,这也使我们的代码更健壮。
我们都知道面向对象主要有四大特性:封装、抽象、继承和多态。
封装:在面向对象语言中,封装特性最为直接的体现在类中,类即现实生活中的实体的抽象,我们将其所拥有的属性和方法封装到类中,对外部我们提供相应的接口,通过实例化的对象可以调用类中封装好的属性和方法,并且在使用这些方法时并不用知晓其内部的具体实现,这是面向对象的封装特性;
抽象:抽象就是将一类实体的所共同拥有的特性抽象出来,封装在一个抽象类中,抽象在面向对象语言中是由抽象类来体现的。抽象类描述的是一类事物共有的东西,而并非特指某种事物,所以在Java编程语言中体现为抽象类不能实例化;
继承:继承就是指子类可以继承父类或者接口,从而可以实现代码重用,其实继承体现的是单继承关系,父类和子类本质上还是一类实体。
多态:Java中的多态具有多重含义。首先多态最为直白的体现就是父类对象引用不同的子类对象实例,调用不同的子类重写的方法从而表现出不同的行为。多态能够提高代码重用,还可为程序提供更好的可扩展性。
2.2 J2EE
J2EE是一项目架构标准主要用于网页的开发通过这个标准可以制定出一些应用于企业的网站。严格地来说,J2EE并不属于一种产品而是一种约束或者是标准。有的人把它称开发的规范,因此,不管是哪一家公司他们只要在这个架构下进行开发都可以开发出一款比较实用的高级应用程序。J2EE从开发到设计,再到最后的综合管理可以构成一套完整的开发体系,J2EE是由oracle软件公司跟其他多数享誉盛名的科技公司共同努力发明并且应用起来的。J2EE是软件开发的一项标准。J2EE并非是一种生产产品,它既可以说一种开发标准,也能够说是一种开发规范。无论是哪家公司都能够在这种现有统一的标准下开发出一套属于自己企业的高级应用系统的。J2EE是一个公司级平台。它用来给那些在公司经营项目中遇到的研发、设计、系统管控有关难题进行简化。
J2EE可以说这一项技术是根据JAVA标准升级而成而不是凭空独创的,J2EE不断的更新和发展最终形成了现在的约束和规范。J2EE技术首先要不违背它所继承的技术和规范标准,比如说对数据库的访问以及良好的跨平台性质,以及分布式的应用。同时,还要适用于各种各样的使用人群。除此之外必须还要为其他的网页开发或者企业开发提供大量的预留接口,体现其强大的可扩展性。其他的开发人员可以通过这些预留的接口对该规范和准则进行更加标准和一致性高的开发,从而体现出J2EE标准的强大的伸缩性。那么最终的一个目的就是要使得程序开发人员在开发过程中尽量少使用市场上的一些现有的框架,从而规范一个正确的开发体系。那么,他是利用一种开发模型,此模型呈现分布式。以此来完成对所有应用的开发。在开发过程中主要根据系统的各个功能进行划分,也可将这些功能划分为不同的组件。不同的组件会存放在不同的服务器上,并通过不同的用户接口进行管理。那么使用这一标准可以明确的规范开发的流程,并且可以通过MVC来解决系统层次和架构的问题,使得开发人员更加轻松的开发代码,并且让维护人员或者后期的修改人员能更加方便地查看系统的代码和结构。
2.3 MySQL
MySQL是一款开源的数据库。它具有非常实用的价值。他属于中型数据库。MySQL提供了许多的技术支持其中包括了多操作系统的支持也包括了多线程的支持,同时也提供多种资源的支持,除此之外,还可以提供多种的数据库连接方法解决数据库并发和大量数据操作的问题 。使用MySQL的人都会认为这个数据库特别实用。由于它是完全开源和免费的,在使用成本上也不会有太大的损失,因此是目前中小型公司主要使用的数据库之一。从数据库关系来看他是一款关系型数据库具有很多优点比如说用的内存空间较小用户界面简单操作起来十分便捷并且不需要太多繁琐的安装步骤。MySQL是由MySQL公司开发而成,那么这个公司是一个什么公司呢?从历史数据来看它是一个非常有商业眼光的公司,也是非常成功的一个公司,它所开发的产品都受到了人们的青睐。MySQL本身的特性也非常的突出,他能够兼容多种操作系统,同时也能兼容多种的编程语言,比如说Linux环境下使用,也同时能够支持多种编程语言并为这些编程语言提供他们所要使用的用户接口。在性能方面具有处理大数据高并发的处理能力,并且不会占用太多的主机内存,这一点相对其他的数据库要好很多。MySQL的架构应用图如2-1所示:

图2-1 Mysql架构服务图
MySQL使用了好几种软件进行测试,保证这个可用性;它支持好多种操作系统;支持多线程,提供了很多资源;也提种了很多数据库连接方法;它还可以处理很多比较大的数据库。大部分使用这个软件的人就会有很大的帮助了,而且还因为其他开放源码软件,也还大大降低总体拥有成本了。
MySQL数据库是最流行的关系型数据库管理系统,在WEB应用方面MySQL数据库是最好的RDBMS(Relational Database Management System:关系型数据库管理系统)应用软件之一。关系型数据库有较强的灵活性,它将数据保存到不同的表中,这样将数据进一步细分,读取速度和灵活性就会提高。MySQL数据库是真正做到了多线程、多用户的SQL数据库[9]。它使用最常用标准化语言去访问数据库。MySQL数据库以其成本低、体积小、速度快和源码开发的优点,开发中小型的网站都选用MySQL数据库作为数据库。
在大学期间,MySQL做为我们最先接触和理解的数据库其基础应用相对广泛,此次毕业设计我也选用MySQL做为后台数据库。
MySQL数据库的实现是以一个客户机/服务器结构[13]的形式,它是很多不同的客户程序和库和一个服务器守护程序组合而成的。
MySQL数据库主要是快度速、比较健壮和易于使用。我们需要这样一个SQL服务器,它能基于不昂贵的基础上,处理数据速度快,加之可视化插件、软件的使用可以使其数据操作更加方便。
可以总结出MySQL具有以下几个特性:
a. 支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统;
b. 为多种编程语言提供了API;
c. 支持多线程,充分利用CPU资源;
d. 通过优化的SQL语句算法,有效地增进了查询速度;
e. 能够作为单独的应用程序为客户端服务器网络环境提供数据支持,也能够作为库而嵌入到其他的软件,完成相关的数据存储作用;
f. 提供多种语言支持,数据表名和数据列名都可以使用多种编码方式如中文的GB 2312、BIG5,日文的Shift_JIS等;
g. 提供多种用于管理数据库操作的管理工具;
使用MySql数据库用作集群服务器管理系统的数据库。可以让服务器大量的相关数据得以快捷地查询处理。
2.3.1 Spring Boot
在Spring Boot是由Pivotal团队开发,它有明确的目的——简化应用Spring开发项目。最突出的特点是配置方式,简化了Spring应用各个方面的配置。另外Spring Boot能够集成大量的框架,解决了之前很重要的项目之间包的版本依赖和稳定性问题[4]。
采用SprinBoot框架,系统整体性能满足实际要求,特别是应用了前后端分离、前后端负载均衡,极大提高了系统运行的稳定性和可靠性[5]。使用Spring Boot集成框架,围绕Web进行架构,框架采用了表现层、业务逻辑层、持久化层三层体系[6]。
Spring Boot还为大中型项目提供了经常用到的非业务功能型的特点:健康状态检测,外部配置、指标、安全等;在项目中不再推荐使用XML的方式[7]。
Spring Boot它旨在简化新Spring应用程序的初始构建和开发过程。该框架使用特定的方式进行配置,因此开发人员不再需要定义模板化配置。这样,Spring Boot致力于成为迅速发展的应用程序开发领域的领导者[8].
2.3.2 Vue.js
Vue.js是一个用于构建用户界面的渐进式JavaScript框架,使用Axios插件封装Ajax进行数据交互,实现数据持久化[11]。
Vue.js是一个轻巧、高性能、可组建化的MVVM库,同时拥有非常容易上手的API;Vue.js是一个构建数据库驱动的Web界面的库;Vue.js是一套构建用户界面的渐进式框架,与其他重量级框架不同的是,Vue.js采用自底向上增量开发的设计。Vue的核心库只关注视图层,非常容易学习,易与其他库或已有项目整合。另一方面,Vue完全有能力驱动采用单文件组件和Vue生态系统支持的库开发的复杂单页应用。简而言之,Vue.js的目标是通过尽可能简单的API实现响应的数据绑定和组合的视图软件。核心是一个响应的数据绑定系统。Vue.js的特性有:轻量级的框架;双向数据绑定;指令;插件化[12]。
2.3.3 MySQL
MySQL数据库服务是一个完全托管的数据库服务,可使用世界上最受欢迎的开源数据库来部署云原生应用程序。 它是百分百由MySQL原厂开发,管理和提供支持。
Echarts是一个纯JavaScript的开源的可视化图表库,涵盖了各个行业的图标,它提供了更直观、生动、可个性化定制的数据可视化图表,能够满足各种需求。Echarts兼容了当前绝大部分的浏览器及多种设备,可以满足本网站的性能需求。
参考文献
[1] 李英杰. 基于JAVA技术的网络考试管理系统的研究与开发[D]. 上海: 同济大学,2007, (23):页码.
[2] 王添财. 基于Java EE的在线考试系统的设计与实现[D]. 广东:华南理工大学,2014.
[3] 刘毅. 人工智能在自动组卷建模中应用研究[J]. 计算机仿真,2011.
[4] 郭琳. Java Web中错误异常的处理方法分析[J]. 电子技术与软件工程,2015.
[5] 关海伟. Java Web的云存储技术研究[D]. 西安:西安电子科技大学,2014,(23):页码.
[6] Renuka Kumar. Detection of Obfuscation in Java Malware[J]. 爱思唯尔期刊,2016.
[7] 郑保平,郭荣宁. 数据库技术研究综述[J]. 军事通信系统,2003,(18): 页码.
[8] Ronald P .Anjard. The Basics of Database Management Systems[J]. Emerald期刊,1994.
[9] Sepideh Naghdi. Preventing database schema extraction by error message handing[J]. 爱思唯尔期刊, 2015.
[10] 朱少民. 软件测试方法和技术[D]. 北京:清华大学出版社,2010.
[11] 柳纯录. 软件评测师教程[J]. 北京:清华大学出版社,2005.
[12] 舒华峰. 自动组卷系统的设计与实现[D]. 吉林:吉林大学,2014,(15):页码.











