为四层,客户层、表示层、业务逻辑层和数据层。客户层运行在客户端上,用于在客户端上实现操作界面,实现与用户的交互,也可用于实现一定的业务逻辑。客户层可以是Web浏览器,也可以是不基于Web的应用程序。其余三层则用于构建服务器端应用。其中表示层用于实现与客户层的接口和交互,它接受从客户端发来的请求,通过
JSP和Servlet调用相应的逻辑模块,并返回动态生
成的响应内容。业务逻辑层则由EJB服务器和EJB组件组成,用于实现系统的业务逻辑。EJB接收到客户层发送的数据,进行处理后,再交由数据层保存。数据层运行各种企业信息系统,如数据库系统、ERP系统、TP系统等,业务逻辑层通过各种M标准协议来读取数据和调用服务。为了实现企业级应用,J2EE中定义了大量的技术标准,如Servlet、、JSPEJB
[5]
配置),致力于低端的消费类设备;另一种是Con2
nectedDeviceConfiguration(CDC,连接设备配置),
[3]
致力于高端消费类设备。J2ME的描述层
file)是定义在配置层之上,它主要提供配置层中所
缺少的功能以支持特定的设备。这些功能包括对
UI和对持续性存储的支持等,它比配置层的针对bileInformationDeviceProfile,简称MIP)是目前D
性更强。其中,MIProfile(移动信息设备描述Mo2D
J2ME平台中发展相对最成熟的Profile。与配置的
纵向特性不同的是,简表是横向的。图1是J2ME体系结构的框图。
图1J2ME体系结构
1.2J2EE
J2EE是一个开放的、基于标准的开发和部署
[4]
平台,主要用于在服务器端开发可伸缩、可迁移、以数据库为核心的企业级应用。J2EE提供了一个多层的端到端的应用系统架构,将应用逻辑根据功能划分成组件,组成J2EE应用的不同应用组件安装在不同的服务器上,解决了传统的Client/Server两层模型中难以升级和改进、可扩展性差、业务逻辑
(Pro2
、JNDIJDBC、、JTA
等,从而使得部署在该平台上的多层应用可以实现较高的可用性、安全性、可扩展性和可靠性。
1.3J2ME/J2EE的基本框架
利用J2ME/J2EE架构来建立多层的企业级移动应用是非常方便的。在支持J2ME的手机、无线
PDA等移动终端上,可以利用它们支持的各种简表
来设计客户端程序,并通过标准网络协议与服务器进行数据传递。服务器端一般由表示层、业务逻辑层和企业信息系统层组成,完成后台的数据处理和存储。
图2J2ME/J2EE移动系统的框架结构
2移动ERP系统的设计
根据以上J2ME/J2EE移动系统的框架结构,
1274
科学技术与工程
9卷
我们可以将其应用到移动ERP系统中。本系统采用Client/Server结构。移动设备通过HTTP(hyper2
ferprotocolsecure)协议或者XML(extensiblemarkuplanguage)连接到WebServer上。由于移动终端设texttransferprotocol)协议或HTTPS(hypertexttrans2
因为争抢共享资源———MIlet对象而出现的死—D锁现象,客户端程序中合理设计了多线程的同步和交互。
classCommandThreadextendsThread{
…
publicvoidrun(){while(true){synchronized(parent){while(!condition){try{parentwait();//线程等待.}…}condition=false;}try{invokeServlet(defaultURL);}…}}}publicvoidcommandAction(Commandcmd,Displayabledis){//当按了"发送"按钮,获取用户输入的"账号"和"密码"信息if(cmd==cmdSend){
备资源有限,它不提供直接对后台数据库的访问能力。因此,要想使移动设备终端能够访问到数据库系统,在服务器端使用了J2EE技术。WebServer使用Servlet容器来处理客户端的连接和请求,然后再将这些请求发送到企业级服务器上,企业级服务器使用EJB进行会话,处理请求,并通过JDBC连接到数据库系统上。当数据库系统处理完SQL语句后,将会形成一个数据集,并将这个数据集发送到企业级服务器,企业级服务器把接收到的信息提交给
WebServer,WebServer再通过HTTP或HTTPS或XML将信息发