论文部分内容阅读
[摘要]随着无线通信技术的不断发展和提高,在PC机上完成的物流信息管理系统在物流企业提供服务的过程中限制了信息交流的及时性。基于J2ME的java手机作为无线终端设备具有随身携带的方便性;因此把J2ME技术应用于物流信息化建设中更是一种全新的思路。基于J2ME的物流信息管理系统能大大提高物流企业的工作效率。
[关键词]J2ME JAVA SERVLET 物流信息
一、前言
进入20世纪90年代以来,在发达国家,现代第三方物流(3PL)作为一个新兴的行业,得到了高速的发展,引起广大企业界和理论界的关注。而发达国家在提高第三方物流服务方面主要是通过发达的信息技术和网络技术。我国在物流信息系统工程的建设方面尚处于起步阶段,与发达国家相比尚有很大差距。能够综合运用现代信息技术最新成果的现代物流信息系统在国内少之甚少。但是随着国家对物流业重要性的认识及国内信息技术的发展,物流信息系统的重要性已经被各级政府部门和越来越多的企业所重视。基于J2ME的java手机软件开发是目前国内外一项先进的技术,相信随着互联网应用技术的广泛普及和无线终端设备技术的不断提高,无线互联网必将是未来的发展方向,同时物流信息化建设也是全球关注的热点,尤其是国内的信息化建设必将在未来十几年中蓬勃发展,因此把J2ME技术应用于物流信息化建设中更是一种全新的思路。
二、J2ME技术在物流信息管理中的优势
一般的物流信息系统都是在PC机上操作完成的,而这种固定操作方式在物流企业提供服务的过程中限制了信息的交流。例如,客户最关心的是物品的安全性、准确性和及时性,希望可以随时随地的查询他关心的信息;物流企业的采购员可能想在路途中知道当前仓库中的动态存货量等等。因此,需求是无限的,无法预知系统用户在什么时刻需要获得服务。而无线通信技术的应用延伸了客户端用户对空间位置和时间的需求,而Java手机的普遍应用使这些需求变为现实。物流企业在信息系统建设中为了提高客户服务水平应该增加Java手机软件系统。此系统可以单独运行而且是运行在客户的手机上的,因为手机是随身携带的无线通信设备,通过Java手机下载并运行此软件可以随时在线查询相关信息了。
三、基于J2ME的物流信息管理系统的设计与实现
基于J2ME的物流信息管理系统可选用基于J2ME的HTTP通信协议的方案。基于HTTP协议的方案不需要通过短信网关进行数据转发,它直接使用HTTP协议,通过提供的网络地址、服务端口进行寻址,找到相应的应用服务,提出服务请求。应用服务器根据请求进行相应的数据处理,将结果依据HTTP协议发送到手机客户端,使得手机等移动手持设备能以Client/Server方式直接访问Internet的全部信息,不同的Client访问不同的文件。
1.总体架构设计
基于J2ME的物流信息管理系统的总体架构见图1。
图1系统总体构架系统架构中,手机与服务器的交互方式采用了多层的体系结构,和普通PC机客户端访问服务器的方式几乎没有区别,这也是基于HTTP协议方案的优点之一。为了与遗留的和未来的物流管理信息系统的相兼容(基于J2EE),系统使用J2ME J2EE的体系结构。J2EE的可扩展性、灵活性使它成为了服务器端事实上的开发标准,J2ME与J2EE的结合,使使用者可以在任何时间、任何地点自由地访问内部网络资源。J2ME J2EE体系结构的示意图,如图2所示。
客户端使用J2ME MIDlet,程序主要由各个用户界面组成,并将一些常用的、数据量较少的、简单的数据表存储在客户端的数据库中;服务器端使用JSP,Servlet,EJB等,并使用JDBC与后端数据库相连。客户端和服务器端使用基于HTTP协议的连接。J2ME将移动设备上的客户应用与后台J2EE服务环境很好地结合起来。基于J2ME J2EE的解决方案可以充分体现Java技术可移植性、可扩展性、易于编程的优点。
相对于一般的信息管理系统,本系统的最大特点在于客户端的设计与实现。本系统的客户端是基于手机Java平台的,因此在它的设计和实现上比较特殊。而服务器端的设计和实现相对来说比较常见一点。
2.客户端设计
满足物流企业员工及客户快速反应要求的物流信息管理软件总体来说至少应满足以下几点要求。一是采用J2ME技术的MIDP规范制作手机软件,从而保证软件的可移植性。二是软件操作流程要符合手机通用标准,以保证软件的可推广性。三是手机软件需具备访问Web数据库的能力,以保证系统的兼容性。四是手机软件采用与手机相同的菜单操作方式,以保证系统的通用性。
客户端系统的设计主要包括两个方面:一是实现物流信息管理系统基本功能的各个显示界面(每个界面都是一个单独的类),二是客户端与服务器的网络连接。
(1)系统基本功能
系统基本功能的各个显示界面都是一个单独的类,各个界面之间的关联见图3。
系统所设计的类及其功能如下:
WlglMIDlet类是系统的中心类。为系统的初始化、启动、暂停、界面调度、销毁、获取系统信息等提供方法。它本身不具备显示的能力。
LoginScreen类显示登陆界面,处理登陆事件。
MainScreen类显示主界面,响应组件事件,对相应信息进行处理,准备进入下一步具体的功能。
StockMenu类显示采购管理主界面,向服务器提交用户输入的数据并取得返回数据,可以使货物预入库。
WarehouseMenu类显示入库管理主界面,向服务器提交用户输入的数据并取得返回数据,准备进入结果界面。
DeliveryMenu类显示出库管理界面,向服务器提交用户输入的数据并取得返回数据,准备进入结果界面。 Transporting类显示运输管理界面,向服务器提交用户的输入数据和查询数据,并返回数据。
Sell类显示销售管理界面,向服务器提交用户的输入数据和查询数据,并返回数据。
SystemsetMenu类显示系统设置主界面,响应组件事件,对相应信息进行处理,准备进入下一步具体的功能。
PWDChange类显示修改密码界面,核对用户输入,进行密码修改处理。
HelpScreen类显示帮助界面。
(2)客户端与服务器的网络连接网络
网络连接是客户端设计中的关键问题。在网络部分有两个重要内容,一个是网络的连接,另一个是客户端与服务器端JSP, Servlet的通信。HTTP协议在MIDP框架和J2EE平台间搭建了传输的桥梁。HTTP连接的打开是用javax.microedition.io.Connector.open方法实现的。这个方法有一个表示URL的字符串参数,它采用URL格式表示。
使用上述方法,手机可以通过HTTP连接和服务器端进行交互。JSP, Servlet通过HTTP协议建立起与客户端的、基于请求/回应的动态连接模式。MIDP支持HTTP 1.1,使用GET和POST方法进行通信,产生HTTP报头和数据报。
在手机和Servlet通信上,选用比较简单的DataInputStream.readUTF和DataOutputStream. writeUTF配对使用的方法。手机发送数据的方法是在Connection的输出流中,用DataOutputStream.writeUTF方法依次写入多个参数,与之对应,Servlet打开请求的输入流(request.getInputStream)用DataInputStream.readUTF方法来依次读出。返回的参数也一样,Servlet用response. getOutput5tream打开输出流,并把返回值依次写入;手机端打开Connection的输入流并读出即可。对于多个参数多个返回值的情况,只需要多次使用writeUTF和readUTF。
3.服务器端设计
J2EE为企业开发提供了丰富的技术组件。用JDBC为各种异构数据库系统提供统一的开发接口;用EJB封装业务逻辑,并将它们应用于后端的企业信息系统;JSP,Servlet提供Web层与客户端的信息交流、协调客户端和EJB之间的交互。在本系统中,服务器端与客户端最直接关联的是Servlet,它用于接收客户端的请求,对数据库进行读写操作,并给客户端返回相应信息。服务器端对应于客户端信息交互部分的Servlet代码框架如下。
public void doGet(HttpServletRequest request, ServletResponse response)
throws IOException,ServletException
{ response.setContentType(“textlhtml; charset=GBK”);//设置响应属性,接收客户端请求
InputStream is=request.getInputStream();
DataInputStream dis== new DataInputStream(is);
String to Str=dis.readUTF();String tf2Str=dis.readUTF();//发送处理后的参数给手机
DataOutputStreamdos=new DataOutputStream(response.getOutputStream());
dos.writeUTF(returnl Str);
dos.writeUTF(return2Str);
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException
doGet(request,response);
为了实现在手机上的大量数据信息的获得和处理,本系统需要将结构比较复杂、数据量比较大的数据存储在后台数据库服务器上。
四、结论
本文通过对该系统客户端及客户端与WEB服务器的连接的设计与实现的详细阐述,表明J2ME技术在移动式的管理系统中可以成熟应用,基于J2ME的物流信息管理系统能大大提高物流企业的工作效率。
参考文献:
[1]Michael Juntao Yuan著,梁超译. J2ME移动应用程序开发[M].北京:清华大学出版社,2004.
[2]王凤斌,段隆振,李向军,甘最科.UML面向对象建模在管理信息系统中的应用.计算机与现代化,2005.
[3]卢军.CJ2ME应用程序开发手机、PDA程序开发捷径.中国铁道出版社,2002.
[4]James Keogh著,潘颖译.J2ME开发大全[M].北京:清华大学出版社.2004.
(作者单位:山东交通学院)
[关键词]J2ME JAVA SERVLET 物流信息
一、前言
进入20世纪90年代以来,在发达国家,现代第三方物流(3PL)作为一个新兴的行业,得到了高速的发展,引起广大企业界和理论界的关注。而发达国家在提高第三方物流服务方面主要是通过发达的信息技术和网络技术。我国在物流信息系统工程的建设方面尚处于起步阶段,与发达国家相比尚有很大差距。能够综合运用现代信息技术最新成果的现代物流信息系统在国内少之甚少。但是随着国家对物流业重要性的认识及国内信息技术的发展,物流信息系统的重要性已经被各级政府部门和越来越多的企业所重视。基于J2ME的java手机软件开发是目前国内外一项先进的技术,相信随着互联网应用技术的广泛普及和无线终端设备技术的不断提高,无线互联网必将是未来的发展方向,同时物流信息化建设也是全球关注的热点,尤其是国内的信息化建设必将在未来十几年中蓬勃发展,因此把J2ME技术应用于物流信息化建设中更是一种全新的思路。
二、J2ME技术在物流信息管理中的优势
一般的物流信息系统都是在PC机上操作完成的,而这种固定操作方式在物流企业提供服务的过程中限制了信息的交流。例如,客户最关心的是物品的安全性、准确性和及时性,希望可以随时随地的查询他关心的信息;物流企业的采购员可能想在路途中知道当前仓库中的动态存货量等等。因此,需求是无限的,无法预知系统用户在什么时刻需要获得服务。而无线通信技术的应用延伸了客户端用户对空间位置和时间的需求,而Java手机的普遍应用使这些需求变为现实。物流企业在信息系统建设中为了提高客户服务水平应该增加Java手机软件系统。此系统可以单独运行而且是运行在客户的手机上的,因为手机是随身携带的无线通信设备,通过Java手机下载并运行此软件可以随时在线查询相关信息了。
三、基于J2ME的物流信息管理系统的设计与实现
基于J2ME的物流信息管理系统可选用基于J2ME的HTTP通信协议的方案。基于HTTP协议的方案不需要通过短信网关进行数据转发,它直接使用HTTP协议,通过提供的网络地址、服务端口进行寻址,找到相应的应用服务,提出服务请求。应用服务器根据请求进行相应的数据处理,将结果依据HTTP协议发送到手机客户端,使得手机等移动手持设备能以Client/Server方式直接访问Internet的全部信息,不同的Client访问不同的文件。
1.总体架构设计
基于J2ME的物流信息管理系统的总体架构见图1。
图1系统总体构架系统架构中,手机与服务器的交互方式采用了多层的体系结构,和普通PC机客户端访问服务器的方式几乎没有区别,这也是基于HTTP协议方案的优点之一。为了与遗留的和未来的物流管理信息系统的相兼容(基于J2EE),系统使用J2ME J2EE的体系结构。J2EE的可扩展性、灵活性使它成为了服务器端事实上的开发标准,J2ME与J2EE的结合,使使用者可以在任何时间、任何地点自由地访问内部网络资源。J2ME J2EE体系结构的示意图,如图2所示。
客户端使用J2ME MIDlet,程序主要由各个用户界面组成,并将一些常用的、数据量较少的、简单的数据表存储在客户端的数据库中;服务器端使用JSP,Servlet,EJB等,并使用JDBC与后端数据库相连。客户端和服务器端使用基于HTTP协议的连接。J2ME将移动设备上的客户应用与后台J2EE服务环境很好地结合起来。基于J2ME J2EE的解决方案可以充分体现Java技术可移植性、可扩展性、易于编程的优点。
相对于一般的信息管理系统,本系统的最大特点在于客户端的设计与实现。本系统的客户端是基于手机Java平台的,因此在它的设计和实现上比较特殊。而服务器端的设计和实现相对来说比较常见一点。
2.客户端设计
满足物流企业员工及客户快速反应要求的物流信息管理软件总体来说至少应满足以下几点要求。一是采用J2ME技术的MIDP规范制作手机软件,从而保证软件的可移植性。二是软件操作流程要符合手机通用标准,以保证软件的可推广性。三是手机软件需具备访问Web数据库的能力,以保证系统的兼容性。四是手机软件采用与手机相同的菜单操作方式,以保证系统的通用性。
客户端系统的设计主要包括两个方面:一是实现物流信息管理系统基本功能的各个显示界面(每个界面都是一个单独的类),二是客户端与服务器的网络连接。
(1)系统基本功能
系统基本功能的各个显示界面都是一个单独的类,各个界面之间的关联见图3。
系统所设计的类及其功能如下:
WlglMIDlet类是系统的中心类。为系统的初始化、启动、暂停、界面调度、销毁、获取系统信息等提供方法。它本身不具备显示的能力。
LoginScreen类显示登陆界面,处理登陆事件。
MainScreen类显示主界面,响应组件事件,对相应信息进行处理,准备进入下一步具体的功能。
StockMenu类显示采购管理主界面,向服务器提交用户输入的数据并取得返回数据,可以使货物预入库。
WarehouseMenu类显示入库管理主界面,向服务器提交用户输入的数据并取得返回数据,准备进入结果界面。
DeliveryMenu类显示出库管理界面,向服务器提交用户输入的数据并取得返回数据,准备进入结果界面。 Transporting类显示运输管理界面,向服务器提交用户的输入数据和查询数据,并返回数据。
Sell类显示销售管理界面,向服务器提交用户的输入数据和查询数据,并返回数据。
SystemsetMenu类显示系统设置主界面,响应组件事件,对相应信息进行处理,准备进入下一步具体的功能。
PWDChange类显示修改密码界面,核对用户输入,进行密码修改处理。
HelpScreen类显示帮助界面。
(2)客户端与服务器的网络连接网络
网络连接是客户端设计中的关键问题。在网络部分有两个重要内容,一个是网络的连接,另一个是客户端与服务器端JSP, Servlet的通信。HTTP协议在MIDP框架和J2EE平台间搭建了传输的桥梁。HTTP连接的打开是用javax.microedition.io.Connector.open方法实现的。这个方法有一个表示URL的字符串参数,它采用URL格式表示。
使用上述方法,手机可以通过HTTP连接和服务器端进行交互。JSP, Servlet通过HTTP协议建立起与客户端的、基于请求/回应的动态连接模式。MIDP支持HTTP 1.1,使用GET和POST方法进行通信,产生HTTP报头和数据报。
在手机和Servlet通信上,选用比较简单的DataInputStream.readUTF和DataOutputStream. writeUTF配对使用的方法。手机发送数据的方法是在Connection的输出流中,用DataOutputStream.writeUTF方法依次写入多个参数,与之对应,Servlet打开请求的输入流(request.getInputStream)用DataInputStream.readUTF方法来依次读出。返回的参数也一样,Servlet用response. getOutput5tream打开输出流,并把返回值依次写入;手机端打开Connection的输入流并读出即可。对于多个参数多个返回值的情况,只需要多次使用writeUTF和readUTF。
3.服务器端设计
J2EE为企业开发提供了丰富的技术组件。用JDBC为各种异构数据库系统提供统一的开发接口;用EJB封装业务逻辑,并将它们应用于后端的企业信息系统;JSP,Servlet提供Web层与客户端的信息交流、协调客户端和EJB之间的交互。在本系统中,服务器端与客户端最直接关联的是Servlet,它用于接收客户端的请求,对数据库进行读写操作,并给客户端返回相应信息。服务器端对应于客户端信息交互部分的Servlet代码框架如下。
public void doGet(HttpServletRequest request, ServletResponse response)
throws IOException,ServletException
{ response.setContentType(“textlhtml; charset=GBK”);//设置响应属性,接收客户端请求
InputStream is=request.getInputStream();
DataInputStream dis== new DataInputStream(is);
String to Str=dis.readUTF();String tf2Str=dis.readUTF();//发送处理后的参数给手机
DataOutputStreamdos=new DataOutputStream(response.getOutputStream());
dos.writeUTF(returnl Str);
dos.writeUTF(return2Str);
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException
doGet(request,response);
为了实现在手机上的大量数据信息的获得和处理,本系统需要将结构比较复杂、数据量比较大的数据存储在后台数据库服务器上。
四、结论
本文通过对该系统客户端及客户端与WEB服务器的连接的设计与实现的详细阐述,表明J2ME技术在移动式的管理系统中可以成熟应用,基于J2ME的物流信息管理系统能大大提高物流企业的工作效率。
参考文献:
[1]Michael Juntao Yuan著,梁超译. J2ME移动应用程序开发[M].北京:清华大学出版社,2004.
[2]王凤斌,段隆振,李向军,甘最科.UML面向对象建模在管理信息系统中的应用.计算机与现代化,2005.
[3]卢军.CJ2ME应用程序开发手机、PDA程序开发捷径.中国铁道出版社,2002.
[4]James Keogh著,潘颖译.J2ME开发大全[M].北京:清华大学出版社.2004.
(作者单位:山东交通学院)