J2ME(Java 2 micro Edition)是一种高度优化的Java运行环境,针对市面上的大量消费类电子设备,例如Papers、cellularphones(蜂窝电话), screen-phones(可视电话?)、digital set-top boxes(数字机顶盒)、car navigation systems(汽车导航系统)等等。 J2ME技术在1999年的JavaOneDeveloper Conference大会上推出。J2ME技术将Java语言的与平台无关的特性移植到小型电子设备上,允许移动无线设备之间共享应用程序。hqHf.Qm N\0 J2ME就是Java 2 micro Edition的缩写,是sun的java 2 的三大成员之一(J2SE,J2EE,J2ME)。专门用于开发消费性电子产品。例如手机,PDA等。
en
Z(v|yP0K^![mU6aSD4P0一、J2ME平台体系结构51Testing软件测试网v+\9xW7`'@Nq
51Testing软件测试网0c/N"Oc@ J2ME并不是一种产品,而是一种技术,J2ME包括两种类型的组件,即配置(configuration)和简表(profile)。51Testing软件测试网&x
J[7h#Dz
&s8imGS4l
L0 配置(configuration)是一系列低层次的API(应用编程接口)和一种为该族设备优化的虚拟机。今天在用的一般配置有两种,连接的设备配置(CDC)和限制连接的设备配置(CLDC)。
fxDlD'Wi{;h051Testing软件测试网c#Y pe3EQ2d!\ CDC提供了一种虚拟机,以及支持像灵敏发报机、寻呼机、个人数字助理(PDA)和电视机顶盒这样的设备上的Java应用的基类库。这些设备的典型特征是具有一个32位的处理器和用来支持虚拟机和类库的超过2MB存储容量。CVM虚拟机正好满足了它们对于Java 2虚拟机特征集的功能需求。这是在小型平台上全特征的虚拟机。
{'xk'oRA1op051Testing软件测试网:m6]7zI |#h4K;{#x6] CLDC提供一个适合于小型的、资源受限的、连接的设备上使用的标准Java平台。这些设备的典型特征是具有一个16位或者32位的处理器和用来支持虚拟机和类库的160KB到512KB的总内存,它们通常以电池作为电源,并联入某类网络中,联网一般使用带宽时常小于9600bps的无线的、断断续续的连接方式。CLDC的核心是K虚拟机(KVM)。“K”标记反映了它们的大小是以kilobytes(千字节)衡量的这一事实。CLDC的特征也是包含一系列类库。51Testing软件测试网}/pCm S;~V&v){;]O!`
C+a%{
b6Xa(h
L0 CDC的硬件参数:
7Y3|*N jD`'W+Z2v^"p:e04`+X;D6U_0 ·2M以上内存。
0Ayjx?2DZ;r
]0 ·具有网络连接能力,通常为无线网络。51Testing软件测试网)h0{9t?qk
·需要实现java虚拟机规范的全部功能。51Testing软件测试网E#`Iw!e2f'kF-z
·32位或者64位的处理器。51Testing软件测试网8xV {iE%l
51Testing软件测试网#UzZx~S CLDC的硬件参数:51Testing软件测试网-C#XBwL5g
uyV+^
51Testing软件测试网J']bmoH)V ·512 KB 以下内存
Yy x-iM&i0U1HD0 ·有限能源供应(通常使用电池)
"t!H*{#U:ZK0 ·有限或非持续网络连接51Testing软件测试网#n`*X vJrA/B
·简单的用户界面51Testing软件测试网p4Ae)q)l
·16位或者32位的处理器
,N3O5i7PoI0j0S)T"eCB0 从上述的标准中我们不难看出CLDC主要针对那些资源非常受限的设备比如手机、PDA、双工寻呼机等。而CDC主要面对那些家电产品,比如机顶盒、汽车导航系统等。简表是以配置为基础的,例如Mobile Information Devices Profile(MIDP)就是CLDC上层的重要简表。与配置的纵向特性不同的是,简表是横向的。下图是J2ME体系结构的框图:51Testing软件测试网#k*t1rFTRF O:N7}.?
51Testing软件测试网*h0z(v/H3g}1T?
5~w%^ de/s/b0 J2ME体系结构框图51Testing软件测试网6n0RhnU5x/H|
Eb.Q]rclp0 简表(profile)是一种说明,它详细描述了架构在配置之上并使用配置的一系列API。简表的一个例子是创建在CDC之上的基础描述(Foundation Profile),它为以像住宅网关、灵敏电话和双向寻呼机这样的设备为目标的应用提供完整的J2ME运行时环境。另一种简表是移动信息设备描述(MIDP),它构建在CLDC之上,为那些运行在像移动电话和登录级PDA这样的设备上的应用提供完整的J2ME运行时环境。MIDP致力于解决像用户界面、持久存储、联网和应用程序生命周期这样的问题。
ebx
p2{H4|4}051Testing软件测试网#a~~{
gT7PK r_K二、J2ME 目标设备
)K*V!d_YLh4l_051Testing软件测试网)^0xx2{oUB 使用 CLDC 开发的 J2ME 应用程序的目标设备通常具有以下特征:
MP/qq3\f
dS0l+D!c`]o|;F0 · 可供 Java 平台使用的 160 到 512 千字节的总内存51Testing软件测试网*\3BX%_-H]5yG
· 功率有限,常常是电池供电
?aTb8`FQ:m+b0 · 网络连通性,常常是无线的、不一致的连接并且带宽有限51Testing软件测试网_Pn@6Js^
· 用户接口混乱,程度参差不齐;有时根本就没有接口51Testing软件测试网C(W'l
N4?#qs'a:eo
K9cEJq0 一些 CLDC 支持的设备,包括无线电话、寻呼机、主流个人数字助手 (/pda/ PDA),以及小型零售支付终端。
Ng2oyb_TW02kf,nR'@A0 依照 Sun Microsystems,CDC 的目标设备通常具有以下特征:
+o.X3th0X+q.c0QbP dSA~
Y9^-F0 · 使用 32 位处理器51Testing软件测试网&M^%N)k/M"u;jd
· 2 兆字节或更多可供 Java 平台使用的总内存
%A3MT.PK!Cd!{0 · 设备要求的 Java 2 “蓝皮书”虚拟机的全部功能
E'rZp ek0 · 网络连通性,常常是无线的、不一致的连接并且带宽有限51Testing软件测试网De+J rw
~
· 用户接口混乱,程度参差不齐;有时根本就没有接口
6u^} {&U051Testing软件测试网.^zF3R;C0@8^x%s6U{#\ 一些 CDC 支持的设备,包括常驻网关、智能电话和通讯器、PDA、管理器、家用电器、销售网点终端以及汽车导航系统。
+NRE$^.J"V051Testing软件测试网FEYg'Hu三、J2ME、J2SE与J2EE之间的比较
sa S9? z T ^
Rd051Testing软件测试网Cs&p5ok*XiO 下面的图表描述了支持 J2ME 应用程序的设备,同时说明了 J2ME 适合 Java 平台之处: 51Testing软件测试网9y9hzDS5u]
w
#_~_M$AC0四、J2ME开发工具
i$y/r4X,O(g0F%W^8O,[(jq,xrB8P01)、J2MEWTK,这个工具在前文已经提到过,它是最基本的J2ME程序开发工具,免费,体积小,速度较快,完全遵守J2ME的各种规范。具有简单的IDE界面,易于上手,开发十分方便快捷,可以和 Forte 3.0捆绑。J2MEWTK适用于初学者和已经达到很高水平的开发者。窃以为J2MEWTK+JDK+Editplus/UltraEdit是绝配。
;oSMycLZd)f$H*z051Testing软件测试网ZF[fy
Ms2)、VisualAge Micro Edition 1.4。这是IBM的产品,号称是J2ME开发领域的TOP 1,但是我用了半天,也没有看出好在那里。马上就删除了。窗口太复杂,不明所以,开发起来很难适应,速度和J2MEWTK一样,比较庞大,装了这个东西,你的C盘就要小心了,多了很多乱七八糟的文件,还注册了许多COM组件,典型的非绿色软件。51Testing软件测试网[(Q^.C)L1Ou;Z`
51Testing软件测试网g c4|@`RPF:fIfW3)、CodeWarrior for Java 6.0。这是Motolola的产品,功能十分强大,集成度很好,开发,调试,发布J2ME程序都很方便(还可以做一般的Java Program)。它的IDE和Visual Studio十分相似,很容易上手。CodeWarrior比较适合中等水平的开发者的使用。不过CodeWarrior不是免费软件,你只能够免费使用30天。
y;`p:{6gBvk00x} J+T#s04)、Borland Jbuilder 5.0的Nokia Bobile版
giZXDlR
Z.t0