JAVA在工程管理系统开发中的应用研究

(整期优先)网络出版时间:2016-12-22
/ 2

JAVA在工程管理系统开发中的应用研究

马国雷李文明王丹佟芳

(国网青海省电力公司信息通信公司青海西宁810008)

摘要:国网青海省电力公司信息通信公司作为电力信息化项目建设管理监督单位,每年承担着大量招标、采购、合同管理及项目建设管理工作,随着国网公司智能电网工作的逐年推进,工作量逐步加大。本文立足公司信息通信工程管理系统研发,介绍了基本数据类型、类型转换、面向对象、开发环境以及Java开发平台等方面等,并提出了JAVA语言开发的意见建议。

关键词:信息化;JAVA;工程管理

0前言

通过信息通信工程管理系统研发,减轻不必要的人工重复核对整理工作,实现了信息化项目管理的可视化、智能化、形象化,完成合同信息录入、整理等工作智能化,提升日常管理工作的效率,避免出现合同信息整理时的数据偏差。JAVA作为一种优秀编程语言,与平台无关,一次编程到处运行。本文从实际工作出发就JAVA开发展开讨论。

1JAVA介绍

Java作为一种开放性编程语言,具有简单、跨平台、面向对象、分布式、可移植、多线程、安全与系统无关、泛型编程的特性,可用于开发安全可靠、严谨的应用程序。Java语言风格类似于C++,继承了C++语言面向对象的技术核心,舍弃了C++语言中容易引起错误的指针,改以引用取代,同时移除原C++与原来运算符重载,改用接口取代,增加了垃圾回收器功能[1]。

Java平台由Java虚拟机(JavaVirtualMachine)和Java应用编程接口(ApplicationProgrammingInterface、简称API)构成。Java应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分[2]。

2、Java数据元素

2.1、基本数据类型

Java语言是静态类型的(staticaltyped),所有变量和表达式的类型再编译时就已经完全确定。在java源代码中,每个变量都必须声明一种类型(type),主要包含primitivetype和referencetype两种基本类型,如表1所示。

2.2数据类型转变

数据类型转换是将一个值从一种类型更改为另外一种类型的过程。一般来说,从低精度数据类型向高精度数据类型转换,则永远不会溢出,并且总能成功;而把高精度的数据类型向低精度的数据类型转变则必然会有信息丢失,有可能失败。Java数据类型转换有隐式转换和显示转换两种。

隐式转换即从低级类型向高级类型的转换,系统将自动执行,程序员无需进行任何操作,故也成为自动转换。转换规则为从存储范围小的类型到存储范围大的类型,具体规则为:byte->short(char)->int->long->float->double。

显式类型转换也称强制类型转换,是指必须书写代码才能完成的类型转换。该类类型转换很可能存在精度的损失,所以必须书写相应的代码,并且能够忍受该种损失时才进行该类型的转换。转换规则为从存储范围大的类型到存储范围小的类型。

2.3标识符

Java语言中变量和常量的命名都必须使用合法的标识符。标识符可以简单的理解为一个名字,用于标识类名、变量名、数组名、文件名的有效字符序列。Java语言规定标识符由任意的字母、下划线、美元符号和数字组成,且第一个字符不能是数字,且不能使用Java中保留的关键字。

另外,Java语言使用unicode标准字符集,中标识符中的字母严格区分大小写,因此Java语言中的字母不仅包括通常的拉丁文字a,b,c等,还包括汉字、日文以及其他许多语言文字[3]。

3面向对象简介

为了适应大规模软件开发的需要,解决结构化语言程序开发的弊端,提高软件开发质量,结合现实世界,引入面向对象开发思想,如图1所示[4]。

图1Java面向对象示意图

3.1对象

对象(Object)有两个层次的概念,现实生活中对象是指客观世界的实体,而程序中对象则是一组变量和相关方法的集合,其中变量表明对象的状态,方法表明对象所具有的行为。

3.2类

可以将现实生活中的对象经过抽象,映射为程序中的对象,对象在程序中是通过一种抽象数据类型来描述,这种抽象数据类型成为类(Class)。

类是描述对象的基本原型,它定义一类对象所能拥有的数据和能完成的操作,在面向对象程序设计中,类是程序的基本单元。程序中的对象是类的一个实例,是一个软单元,与传统语言中变量与类型关系一样,相似的对象可以归并到同一类中。

4创建Java程序

4.1Java平台

Java平台不同于一般平台,它是一个纯软件平台,在其它硬件基础平台上运行,Java平台有两个部分:Java虚拟机(JavaVM)和Java应用程序接口(JavaAPI)。Java虚拟机是Java平台的基础,是在各种不同的硬件基础平台上的接入口。Java字节码程序就是由它解释并执行,同时提供程序的运行环境。JavaAPI是一个巨大的、提供许多有用功能的、软件组成的集合体,由相关的类和接口构成,JavaAPI和虚拟机把程序与硬件隔离开,Java程序通过API在VM上运行。

4.2Java开发环境

Java总体来说有三种开发环境,JAVA开发环境、测试环境及生产环境。为确保系统配置合适、运行稳定,所有的开发和配置在开发配置环境中进行,一般情况下,只有这个环境可以改配置和进行开发,但不在这个环境下创建数据;新开发的程序或新配置的文件直接传入生产环境可能会破坏生产环境的可用性,故通过系统传输到测试环境,进行功能测试,可以创建数据;生产环境即正式使用的系统环境,一个环境对应一个或多个服务器,接受经测试环境测试无误的程序和配置,并进行部署、发布。

5Java主类结构

Java语言是面向对象的程序设计语言,Java程序的基本组成单元是类,类体中又可包括属性与方法两部分。而每一个应用程序都必须包含一个main()方法,含有main()方法的类称之为主类,其基本格式如下:

packageNumber;

Importjava.util.Date;

publicclassOutTest{

staticStringtest1="hello";

publicstaticvoidmain(String[]args){

Stringtest2=newDate();

System.out.println(test1);

System.out.println(test2);

}

}

(1)一个Java应用程序由若干个类组成,为程序能够顺利编译,采用package关键字引入一组指定的类。

(2)通过import加载已定义好的类或包、导入支持类(可以是JDK基础类或者自己编写的类),用于供本类调用。

(3)全局变量为类的属性且声明在类中,局部变量为方法中的属性且声明方法。

(4)main()是类中的主方法,必须声明为publicstaticvoid,以“{”开头,以“}”结尾。

6、Java报表开发实例

下面结合一个根据厂商名称查询厂商详情的简单实例,介绍Java报表实际开发的过程。报表程序设计关键的一点,就是在开始阶段要确定将会用到的数据表和取数逻辑。

在代码编写中,首先定义实体类,并创建相应的数据类型以及get和set方法。

@Entity

@Table(name="FACT_INFO")

publicclassFact_Info{

privateStringfact_name;

privateStringfact_addr;

privateStringfact_post;

}

图2Java程序示例

接着定义如图2所示的输入屏幕,供查询者输入查询的条件。

<s:formaction="fact_find"method="post"namespace="/"name="form"onsubmit="returnfind();">

现在就可以进行数据查询了。实例代码如下:Stringsql="fromFact_Infowhere"。结果图2所示。

7Java开发思考

Java类中main()方法作为一个入口函数,相当于C/C++程序中的主函数。之所以把它封装到一个类里,而不像C/C++那样单独作为一个函数来处理,主要出于以下几点考虑:

1)Java既然把包括程序在内的所有事物都看成了对象,它就应该属于某个类并以程序名来命名,而main()只不过是一个特殊的入口方法。

2)把程序封装成类,则包括本程序在内的任何程序都可以根据需要随时创建相应对象,并通过该对象使用这个类中的资源,便于资源共享,提高程序的灵活性。

3)Java程序是一种以类为基本单位的模块化程序,编译后每一个类会对应生成一个二进制字节码类文件,故把程序封装成类,便于管理。

4)把入口方法封装到类中,目的是要尽可能平等地看待所有的类,把main()方法封装到一个类中则意味着main()与类的其他方法没什么本质区别,只是分工不同。

8结语

本文针对Java开发语言,从基本数据类型、类型转换、面向对象、开发环境以及Java开发平台等方面对Java进行了全面的介绍,利用简单的厂商信息查询程序进行了开发示例,并根据笔者在开发中的领悟提出了Java在应用开发中的几点思考。

另外,在Java开发中,还会涉及到面向对象、模块化技术、调试功能、跟踪、存储与检索、文件流、系统数据与第三方数据交互以及后台处理等许多不同的强大功能,正是由于有了这些功能,使得开发特定用户的不同需求成为可能,从而大大提高了系统二次开发的可能性,使系统的灵活性、兼容性大大增强。

参考文献

[1]管贻生编著.Java高级实用编程[M].清华大学出版社,2004

[2]高雅侠,邹海荣.基于Java的RMI技术的研究与应用.计算机与数字工程.2011(10)

[3]周昕,尹芳.Java语言的异常处理机制研究[J].计算机与信息技术.2010(Z1)

[4]韦庆清,任卫东.基于Java存储机制的应用研究[J].现代计算机(专业版).2011(20)