1、苏 州 市 职 业 大 学实习(实训)汇报 名称 智能手机J2ME项目实训 6月25日至6月29日共 1 周学院(部) 计算机工程学院 班 级 11应用技术4(嵌入式) 姓 名 刘宗坤 学院(部)责任人 李金祥 系 主 任 陈 珂 指导老师 贾震斌 钟卫铭 目录1实训目标和要求11.1实训目标和要求11.2 实训内容介绍22 J2ME介绍42.1 什么是J2ME42.2 J2ME发展和现实状况42.3 J2ME应用领域53 J2ME开发环境构建63.1 J2ME开发所需软件63.2 JDK63.2.1 JDK功效63.2.2 JDK下载网址63.2.3 JDK安装步骤63.3 Eclipse8
2、3.3.1 Eclipse功效83.3.2 Eclipse下载网址93.3.3 Eclipse安装步骤93.4 Sun J2ME Wireless ToolKit103.4.1 WTK功效103.4.2 WTK下载网址103.4.3 WTK安装步骤103.5 EclipseME123.5.1 EclipseME功效123.5.2 EclipseME下载网址123.5.3 EclipseME安装步骤133.6 Eclipse汉化153.6.1 Eclipse Babel Project153.6.2 Eclipse Babel Project下载网址153.6.3 Eclipse Babel P
3、roject安装步骤164 J2ME项目构建184.1 项目创建和导入184.1.1新建J2ME项目184.1.2 J2ME项目工程文件夹结构204.1.3 导入实训项目214.2 实训项目功效和模块214.2.1 实训项目功效214.2.2 实训项目模块214.3 项目调试和运行224.3.1 运行实训项目224.3.2 配置实训项目234.3.3 联网测试实训项目23实训个人小结24参考文件251实训目标和要求1.1实训目标和要求Java 2 MicroEdition (简称J2ME)是原Sun企业专为小型嵌入式电子设备提供Java平台,是唯一能跨多个不一样处理机和操作系统运行应用环境,现
4、在仍然在工业和民用嵌入式设备开发中得到广泛应用。J2ME以JDK+Eclipse+WTK+EclipseME方法构建集成开发环境思想,无疑对于以后Android以JDK+Eclipse+Android SDK+ADT方法构建应用开发环境产生关键影响。所以,学习J2ME项目开发环境构建不仅能更多地了解嵌入式智能应用开发路径,而且能够愈加好地了解以智能手机为代表智能移动设备应用开发前世、今生,愈加好地把握智能移动应用开发方向,对Android、iOS等平台以外非主流开发平台有初步了解。此次实训具体目标以下:1. 了解J2ME在智能手机应用领域作用,掌握J2ME集成软件开发环境构建方案。2. 了解J
5、2ME项目开发基础过程,掌握J2ME项目创建步骤及能使用WTK模拟器运行J2ME项目。此次实训要求以下:1. 认真阅读老师下达任务书,了解任务目标和要求,严格根据实训内容完成实训项目;2. 实训着重培养学生自主发觉问题、思索问题、处理问题能力,实训过程以学生自主学习为主,老师关键以答疑解惑方法提供指导;3. 为培养学生团体合作精神,参与实训学生能够24人为单位组成实训小组,协同完成实训任务;4. 实训学生应注意培养自己独立地发觉问题、查找资料和处理问题能力,以独立完成本人负责模块为主,小组组员讨论为辅方法进行团体合作;5. 实训汇报是实训过程关键组成部分,学生均应独立完成本人实训汇报,汇报内容
6、应真实、严谨,汇报结构应合理、紧凑,汇报格式应规范、完整。1.2 实训内容介绍1. 构建基于JDK+WTK+Eclipse+EclipseMe+Eclipse Babel方案J2ME汉化集成软件开发环境。(1) 经过文档、网络等方法调研J2ME起源、发展和现实状况;(2) 经过网络获取JDK、WTK、Eclipse、EclipseMe及Eclipse Babel等无偿或自由软件;(3)J2ME集成开发环境安装、配置、汉化。2. 在J2ME集成开发环境构建完成基础上,创建J2ME项目,了解J2ME项目框架结构,导入现有J2ME项目,在模拟器运行该项目。(1)创建J2ME项目,掌握项目工作空间中关
7、键目录用途;(2)导入实训应用项目,完成项目编辑、配置等修改;(3)对应用项目进行简单调试、除错,最终完成应用项目运行。3. 本实训中J2ME项目是一个基于Socket网络编程协议智能手机J2ME网络通信应用程序,该系统同时包含服务器和用户端功效,能够依据通信需要启用服务器端功效或用户端功效,能够指定通信端口号,在分别代表用户端手机模拟器和代表服务器端手机模拟之间发送和接收文本信息,网络通信分别由独立线程完成。1.3 实训时间安排1. 老师部署实训任务,介绍实训内容、工作步骤、进度安排和实训注意事项.1课时2. 学生依据实训要求上网查阅文档资料,深化对实训目标、要求和操作步骤了解。3 课时3.
8、 学生上网尝试下载指定软件,体验自由软件获取方法。老师可事先下载所需软件备用。4课时4. 依据实训指导书操作步骤安装软件。2课时5. 依据实训指导书操作步骤配置软件。2课时6. 依据实训指导书要求汉化开发环境。 2课时7. 在安装、配置完成后集成开发环境中,根据任务书要求创建J2ME项目,完成程序代码编写、调试和运行。6课时8. 撰写实训汇报 4课时2 J2ME介绍2.1 什么是J2MEJava程序设计语言是一个面向对象高级程序设计语言,不仅含有多态性、封装性、继承性等面向对象基础特征,而且还含有较高安全性,尤其是Java虚拟机独具跨平台功效,使Java语言独具高移植性,为Java语言应用于小
9、型消费电子设备和嵌入式设备软件开发提供了良好基础。J2ME(Java 2Platform Micro Edition),Java精简版,因为J2ME关键针对小型电子设备开发,这些设备全部有一个最大特点,内存空间小,所以,J2ME在Java关键基础上进行了删减,留下了全部小型设备通用部分,并引入了专门API类库,所以是Java精简版。关键用于无线通信设备、手机、PDA等小型电子设备和嵌入式设备软件开发,是移动商务最好编程语言。2.2 J2ME发展和现实状况嵌入Java技术发展建立在其研究和开发方向基础之上,所以也关键表现在虚拟机实施效率、安全、线程机制、实时和应用等方面。相关实施效率方面,商业化
10、嵌入Java虚拟机实现在垃圾回收算法上往往屏弃传统Mark-Sweep算法,而采取效率更高动态回收算法,如Baker实时拷贝算法(Baker real time copying collection)和Appel-Ellis-Li 实时一致性垃圾回收算法等。和嵌入环境相矛盾是这些动态算法往往需要更多资源,所以嵌入Java虚拟机实现往往在这里做了部分折中,如NewMonic企业实时嵌入虚拟机Percesmertec企业Jbed等等。为了提升Java虚拟机字节代码解释器效率,Sun企业采取了其HotSpot技术对字节代码运行性能瓶颈进行动态监测和Cache化,和此相同技术是JIT(Just In
11、Time 技术),该技术静态地对Java字节代码可能性能瓶颈(如长循环)进行当地代码Cache。另一个提升Java字节代码方法是编译,一个所谓AOT(Ahead Of Time)技术将Java字节代码编译成体系结构相关机器码,能够有效地提升Java应用性能。如TowerTowerJ,但其局限于丧失Java动态装载特征8。对于Java字节代码安全性验证过程,因为资源占用和性能考虑,Sun企业在其KVM实现中将其移到虚拟机外部,即作为编译后一个字节代码“后处理”过程。线程机制实现有多个选择,Sun企业采取了Green Thread方法,即在虚拟机中完整实现线程机制,使得Java线程和操作系统当地线
12、程区分开来,这使得一些没有线程机制操作系统也能够运行Java虚拟机和线程化Java应用。另一个实现方法为映射方法,立即Java线程映射到底层操作系统当地线程上。采取这种方法虚拟机较易实现,但可移植性较差。含有实时特征JVM几乎毫无例外地采取了线程当地映射方法,同时要求底层操作系统对抢占式线程和实时提供支持。在JCP公布RTJ规范1.0以前,国外在实时JVM虚拟机实现上过去往往采取各自技术和手段,现在全部开始向RTJ靠拢,如前面提到PERC、JBED和IBMJ9,RTJ要求虚拟机扩展以扩展形式提供,而且不能影响原有Java应用运行语义。2.3 J2ME应用领域自从1993年 Sun企业提出Jav
13、a技术以来(Java语言规范和Java虚拟机规范),对Java应用和研究一直呈逐步上升趋势,其应用和研究范围覆盖面极广,关键涵盖了以下领域:(1)超级计算领域,如:JPVM(Java Parallel Virtual Machine)、PJVM(Parrallel Java Virtual Machine)、Java Grand等;(2)企业计算领域,如J2EE、Grid、Web service等;(3)嵌入计算领域,如Personal Java、embedded Java和Card Java等。1999年,Sun企业又在Personal和embedded Java基础上提出J2ME1(Jav
14、a 2 Micro Edition)规范族,从现在国外对J2ME接收程度来看,J2ME已经不可避免地将在下一代移动和无线计算中饰演很关键角色。依据对各移动通信企业(Ericsson、Nokia、Motorola、LG、Samsung、Palm等)现在正在开发和立即开发下一代移动通信设备调查,绝大多数采取J2ME作为其应用和开发平台,比如Ericsson R38s,NokiaNokia 9210 Communicator,MotorolaiDen系列等。另外,日本电报电话企业(NTT/Docomo)已经使其基于J2ME移动电话普及率在日本本土已超出万。一个显著事实是,下一代计算模式中,移动计算和
15、无线计算将占据很关键比重,而其中关键将是 J2ME,而 J2ME 关键是嵌入式Java虚拟机KVM2 (Kilobyte Virtual Machine)和 CVM3(Compacted Virtual Machine)和基于虚拟机Configuration和Profile。现在情况是:由Sun和一系列领域相关企业提议了一个成为Java Community Process(JCP)组织,由该组织组员制订J2ME和Java其它对应规范,各研究机构和企业依据这些规范实现自己产品。本文将对J2ME技术各方面作简明介绍。3 J2ME开发环境构建3.1 J2ME开发所需软件JDK安装Eclipse安装W
16、TK安装EclispeME插件安装(加载WTK到Eclipse中)安装Eclipse简体汉字语言包3.2 JDK3.2.1 JDK功效JDK 即 Java Development Kit(Java开发工具包),包含了java运行环境,基础类库和部分java工具,是java运行基础。JDK(Java Development Kit)是Sun Microsystems针对Java开发员产品。从SUNJDK5.0开始,提供了泛型等很实用功效,其版本也不停更新,运行效率得到了很大提升。3.2.2 JDK下载网址官网下载地址:3.2.3 JDK安装步骤1)下载完成后,双击安装包开始进入安装向导,根据要求
17、设置安装目录。图3.1 双击进入安装向导图3.2 JDK安装完成2)要先配置环境变量,在【我电脑】上按右键,选择【属性】,选择【系统属性】面板上面【高级】选项,然后选择下面【环境变量】。图3.3 系统属性3)在底部【系统变量】列表中,查找变量名为“JAVA_HOME”系统变量,假如没有,则点击【新建】按钮,在弹出对话框里,变量名填入“JAVA_HOME”,在变量值里面填入jdk安装路径C:Program FilesJavajdk1.6.0_01,点击【确定】,查找变量名为“Path”环境变量,然后点击【编辑】按钮,在变量值最终面加上“;C:Program FilesJavajdk1.6.0_0
18、1bin”。图3.4 环境变量图3.5 环境变量4)点击【确定】按钮,查找变量名为“CLASSPATH”环境变量,假如没有找到该环境变量则点击【新建】按钮,在变量名里填入“CLASSPATH”,在变量值里面填入“C:Program FilesJavajdk1.6.0_01libdt.jar;C:Program FilesJavajdk1.6.0_01libtools.jar;. ”注意就是最终那个点一定要写上!图3.6 环境变量3.3 Eclipse3.3.1 Eclipse功效Eclipse是Java语言开发平台,能够为开发者提供多种开发工具集成,是完全无偿开放源代码软件,最初是IBM企业产
19、品,以后IBM将Eclipse捐赠给了开源小区, Eclipse含有强大开发功效,它是靠插件来完成集成开发环境配置。3.3.2 Eclipse下载网址能够链接到下载网址进入图3.7所表示下载界面,选中eclipse,完成下载。图3.7 Eclipse下载界面3.3.3 Eclipse安装步骤1)在上面步骤中已经安装好JDK,下面就是解压下载包,双击打开已经下载好eclipse。图3.8 Eclipse解压后内容2)双击后会出现以下界面,这是选择 workspace 界面,大家能够自由选择,我们这里选择默认 选择“ok”,下面就进入Eclipse欢迎界面,Eclipse就安装好了。图3.9 选择
20、工作空间3.4 Sun J2ME Wireless ToolKit3.4.1 WTK功效J2ME Wireless Toolkit(WTK)是常见J2ME SDK,使用WTK能够进行程序编译、校验、运行。3.4.2 WTK下载网址进入网址,打开下载界面进行下载所需WTK。图3.10 WTK下载界面3.4.3 WTK安装步骤1)下载完成后,双击进入安装向导,然后跟着安装向导界面提醒继续安装。图3.11 双击进入安装向导2)进入选择JVM位置界面,JVM框中已经找到JDK所在文件夹,能够直接点击“下一步”按钮,不然,点击“浏览”按钮由安装者手动查找JDK所在文件夹。而且要记住这个WTK文件夹位置,
21、后面设置J2ME时还要用到。图3.12 选择JDK所在文件夹3)注意安装时,不要选择检验产品更新,不然会花费很长时间,下面继续跟着向导开始安装,直到完成。图3.13 关闭检验更新窗口图3.14 安装进行中图3.15 安装完成3.5 EclipseME3.5.1 EclipseME功效EclipseME是一个用来开发J2ME应用程序Eclipse插件。EclipseME集成了Eclipse现有java editor功效,提升代码编写效率。3.5.2 EclipseME下载网址 进入网站选择适宜版本下载,以下图所表示。图3.16 EclipseME下载界面图3.17 选择适宜EclipseME版本
22、并点击下载3.5.3 EclipseME安装步骤1)在Eclipse选择菜单【help】【Install New Aoftware】来打开【Install】对话框,图3.18所表示,单击右上角【Add】按钮,弹出图3.19所表示Add Repository对话框,在【Location】文本框中输入EclipseME插件下载地址,单击OK按钮,过几秒后,【Install】对话框中中间列表部分,将得到和Eclipse版本相匹配EclipseME选项,图所表示:图3.18 Eclipse【Install】对话框图3.19【Add repository】对话框2) 点击【Select All】按钮选中
23、上述插件,单击【Next】按钮进入下一安装步骤,界面选中要安装组件,图3.20所表示,然后选择接收协议,单击【Finish】按钮,Eclipse开始以前面指定网站下载安装选定插件,图3.21所表示:图3.20EclipseME插件内容图3.21 确定EclipseME插件协议图3.22 EclipseME安装过程3)装过程中,会出现图3.23提醒窗口,提醒插件包含没有有效署名内容,必需点击“OK”,不然会退出安装,最终会提醒出现图3.24所表示运行画面,提醒要重新开启Eclipse。图3.23 EclipseME安装过程中安全警告提醒图3.24 EclipseME安装完成后提醒重新开启4)装完
24、成后能够在EclipseME中检验是否安装成功。图3.25 EclipseME安装完成后检验是否安装成功3.6 Eclipse汉化3.6.1 Eclipse Babel ProjectEclipse默认安装是英语版,为了实现语言当地化,开源小区项目Eclipse Babel Project提供了多国语言包,能够经过下载并安装汉字语言包来汉化Eclipse界面。3.6.2 Eclipse Babel Project下载网址1),页面上找到“Download”文字链接后点击进入下载页面。图3.26 Eclipse Babel Project下载页面2)在上图页面中“Babel Language P
25、ack Zips and Update Sites”栏目区域中找到和要汉化Eclipse版本名称对应链接,点击后进入汉化包下载选择页面,图3.27所表示:图3.27 Eclipse Babel Project下载选择页面3.6.3 Eclipse Babel Project安装步骤1)将Eclipse Babel Project中解压缩后相同文件来替换Eclipse中相同文件,图图3.28所表示:图3.28 Eclipse Babel Project包下载完成解压后界面文件图3.29 Eclipse中也能够找到相同名称子文件夹图3.30 将Eclipse Babel Project包中相同名称
26、文件夹替换Eclipse中文件夹2)替换后,重新打开Eclipse,得到汉化后界面,图3.31所表示。图3.31Eclipse汉化后界面4 J2ME项目构建4.1 项目创建和导入4.1.1新建J2ME项目J2ME项目是在J2ME技术平台上根据MIDP规范建立应用程序,创建步骤关键包含两大步:1)创建 J2ME MIDlet Suite:这一步创建应用项目标Project框架,自动生成项目所需文件夹结构和项目配置文件,但还没有生成应用源程序文档,所以J2ME项目标Project框架也称为 MIDlet Suite,图4.1到4.4所表示:图4.1 在Java-Eclipse SDK中新建项目图4
27、.2 在选择向导中选择J2ME Midlet Suite图4.3 输入项目名称图4.4 完成创建2)创建J2ME MIDlet:这一步创建J2ME项目主类源程序文件及该类框架,J2ME项目标主类必需继续自J2ME系统MIDlet类,这是J2ME项目负责开启主类,一个J2ME项目必需有一个MIDlet类,不然应用无法开启,具体过程图4.5到图4.8所表示:图4.5 开始创建J2ME项目主类源程序及其框架图4.6 选择向导中选择J2ME Midlet图4.7 新建J2ME Midlet 名称图4.8 完成创建4.1.2 J2ME项目工程文件夹结构4.1.3 导入实训项目4.2 实训项目功效和模块S
28、ocket项目关键有4个功效模块组成:(1)开启界面模块:SocketMidlet 类是一个MIDlet 类,作为开启主类。(2)服务器端模块:Server 类,实现服务器端Socket连接和收发数据功效。(3)用户端:Client 类,实现用户端Socket连接和收发数据功效。(4)发送数据模块:Sender 类,作为服务器端和用户端共用发送数据模块。4.2.1 实训项目功效本实训中J2ME项目是一个基于Socket网络编程协议智能手机J2ME网络通信应用程序,该系统同时包含服务器和用户端功效,能够依据通信需要启用服务器端功效或用户端功效,能够指定通信端口号,在分别代表用户端手机模拟器和代表
29、服务器端手机模拟之间发送和接收文本信息,网络通信分别由独立线程完成。4.2.2 实训项目模块Socket项目关键有4个功效模块组成:(1)开启界面模块:SocketMidlet 类是一个MIDlet 类,作为开启主类。(2)服务器端模块:Server 类,实现服务器端Socket连接和收发数据功效。(3)用户端:Client 类,实现用户端Socket连接和收发数据功效。(4)发送数据模块:Sender 类,作为服务器端和用户端共用发送数据模块。4.3 项目调试和运行4.3.1 运行实训项目图项目正在运行当开启运行界面后,进入项目运行模块,能够看到以下图4.3 1模块截图。图 4.11设置MI
30、Dlet主类,作为项目开启类,在编辑区域内打开MIDlet主类。图 4.12 图所表示选择server 模式,进入项目标模拟器,准备运行工作。4.3.2 配置实训项目在配置模拟器操作中需要注意:(1)模拟器是一台仿真手机界面,所以全部对模拟器操作只能经过鼠标替换手指操作,不能使用电脑键盘操作;(2)模拟器操作完全是仿照传统手机使用操作。(3)经过手机模拟器中上、下、左、右导航键,在不一样视图组件中切换,经过4个方向导航键中间键,实施确定或选中操作。(4)屏幕左下和右下菜单命令,使用手机键盘菜单下方对应“”键打开或选中。(5)手机要求输入信息只能经过手机号码区键盘操作,因为模拟器没有汉字输入法,
31、所以只支持英文、数字和符号输入。图4.13 配置模拟器4.3.3 联网测试实训项目1)服务端收到用户端发送信息 图4.14 许可网络连接 图4.15服务器等候连接2)再次开启一个手机模拟器作为用户端,开启后模拟器界面中点击右下导航键,将光标移到Client单选项,点击确定键选中Client选项,并确定“Port Number”右侧端口和服务器一致,这很关键,不然无法连接,选择屏幕下方“Start”菜单项,开启用户端模块,图4.16所表示,以后许可网络连接,图4.17所表示: 图4.16开启用户端模块 图4.17许可用户端使用网络连接(3)让两个模拟器同时出现在电脑屏幕上,注意观察,能够发觉服务
32、器端已经收到用户端发送消息,图4.18所表示:图4.18 服务端收到用户端消息实训个人小结经过这次智能手工J2M项目实训,在编码和测试过程中,学到了不少知识,也碰到了很多问题,总体功效很明确实用,使用很简单,便于操作,适适用户需求。在编码之前,对整个系统进行系统需求分析是很关键和必需,在这个基础上,我逐一完成各个功效模块,依据在课堂上学过知识,在对后台数据读写有了一定了解后,经过参考课堂上做过学生管理系统,把添加,删除,修改和查询等功效全部实现了,在界面设计上,加入了部分图片,让界面愈加美观。总来说,经过这次智能手工J2M项目实训,对以前知识又加深了印象,愈加了解了MVC模式,和面向对象编程思想,让我掌握了更多编程技巧。参考文件1javaME实用详解-用Eclipse进行移动开发电子工业出版社。2javaME开发技术原理和实践教程陈东林等.电子工业出版社3杨军,秦冬,王莹.J2ME嵌入式开发案例精解.北京:电子工业出版社,.74孙更新,宾晟,孙海伦.Java ME手机应用开发大全.北京:科学出版社,5汪永松.J2ME手机高级编程.北京:机械工业出版社,.6