郭克华J2ME移动开发实战教学视频讲义20

合集下载

《J2ME程序设计》课程教学大纲

《J2ME程序设计》课程教学大纲

《J2ME程序设计》课程教学大纲一、课程基本情况开课单位:计算机与信息工程系课程编码:适用专业:软件修课方式:必须总学时:68学时考核方式:考试教材:《J2ME移动应用开发》郝玉龙北方交通大学出版社 2006.9教学参考书:《精通J2ME无线编程》,林胜利,中国铁道出版社,2004年二、课程的性质、任务和目的本课程是计算机软件专业的一门专业基础课程,重在培养学生的移动设备实践开发能力,适应软件企业的工作环境和业界标准,并和国际先进的软件开发理念保持同步。

通过本课程学习,学生应该了解并掌握J2ME技术基础,CLDC与MIDP基本概念,熟练应用J2ME技术开发基于移动设备的应用系统或游戏系统,并了解移动增值业务系统的开发基础。

学习本课程学生应达到如下要求或能力:1、掌握J2ME技术基础以及CLDC与MIDP的基本概念2、熟练应用J2ME技术编写简单应用软件系统3、熟练应用J2ME技术编写简单游戏4、了解无线增值业务(如SMS)应用系统的开发三、课程的主要内容和学时分配(一) 主要内容第1章 J2ME概述 2学时1.1 J2ME简介1.2 J2ME架构1.3 技术规范第2章 Hello World 2+2学时2.1 第一个实例2.2 J2ME程序开发流程2.3 代码解释2.4 JBuilder 9的配置2.5 使用JBuilder 9开发Hello World第3章 MIDlet和MIDlet Suite 4+2学时3.1 MIDlet概述3.2 MIDlet的打包3.3 MIDlet的生命周期3.4 MIDlet的安全管理第4章 MIDP用户界面——高级API 6+2学时4.1 MIDP用户界面概述4.2 高级API详述4.3 开发实用程序第5章 MIDP用户界面库——底层API 8+4学时5.1 Canvas类概述5.2 设备及屏幕属性5.3 基本作图属性设置5.4 基本图形操作5.5 剪切区操作5.6 输入处理5.7 多线程5.8 定制Item5.9 开发实用程序第6章 MIDP游戏编程 6+4学时 6.1 游戏API概述6.2 GameCanvas类6.3 LayerManager和Layer6.4 Sprite6.5 TiledLayer6.6 游戏设计第7章 MIDP网络编程 8+4学时 7.1 通用连接框架7.2 输入输出流7.3 HTTP协议7.4 使用HttpConnection编程7.5 Socket编程7.6 无线消息传递7.7 PushRegistry7.8 网络安全和MIDlet的签名认证第8章永久存储 4+2学时 8.1 永久存储概述8.2 RMS基础8.3 账务管理程序附录A J2ME开发基本环境设置 2+2学时 A.1 获取软件包A.2 软件包安装与配置A.3 J2ME网络资源附录B CLDC概述 2+2学时 B.1 CLDC的目标和功能B.2 CLDC 1.1与CLDC 1.0的区别B.3 CLDC的安全要求B.4 CLDC中虚拟机的变化B.5 CLDC中的类库附录C MIDP概述 2+2学时 C.1 MIDP的范围和软硬件要求C.2 MIDP的包概述C.3 MIDP的部署-Over-The-Air (OTA)C.4 MIDP程序的效率Borland认证课程介绍(二) 学时分配四、课程教学基本要求及重点1.J2ME概述了解J2ME的基本概念,开发架构以及采用的规范,掌握J2ME开发所需基本条件以及开发环境所需软件基础。

郭克华J2ME移动开发实战教学视频讲义02

郭克华J2ME移动开发实战教学视频讲义02

些初始化代码写在构造函数或 startApp 里面,这个策略将在后面的程序中体现出来。
手机模拟器的上方,有一个
菜单,如图所示:
x3x
J2ME 移动开发实战教程

菜单中选择“暂停”,会发现控制台打印如下信息:
再在
菜单中点击“恢复”,控制台又会打印:
最后,你可以在
菜单中选择“退出”来关掉模拟器,也可以点击模拟器右方的
【2-1】详解 MIDlet 结构
〖实例需求〗
javax.microedition.midlet 中只包含一个 MIDlet 类,MIDlet(Mobile Information Devices let)是手机上运行的 J2ME 应用程序,即移动信息设备小程序。理论上讲,手机应用程序都
J2ME 移动开发实战教程
“手机电源开关”按钮关掉模拟器。
值 得 一 提 的 是 , 调 用 notifyPaused 函 数 可 以 手 工 让 程 序 进 入 暂 停 状 态 ; 调 用
notifyDestroyed 函数可以手工让程序销毁。
读者可以自行进行测试。
综上所述,MIDlet 的生命周期如图 2-1 所示:
构造函数(自动)
2:三个普通函数:
这些函数体现了 MIDlet 的生命周期: 1:当 MIDlet 运行时,startApp 函数会自动调用,应用程序进入运行(Active)状态,此 时程序正在运行中; 2:在 MIDlet 运行时,你可以通过一些手段让 MIDlet 暂停,此时,pauseApp 函数自 动调用,让程序进入暂停(Paused)状态; 3:当 MIDlet 消亡时,自动调用 destroyApp 函数。 以上三个函数都是自动调用的。接下来的两个函数可以人为调用: 1:人为调用 notifyPaused 函数,MIDlet 立刻进入暂停(Paused)状态,MIDlet 持有的所 有资源暂时被释放,但它随时可能被运行; 2:人为调用 notifyDestroyed 函数,MIDlet 立刻进入销毁(Destroyed)状态,MIDlet 被

郭克华J2ME移动开发实战教学视频讲义04

郭克华J2ME移动开发实战教学视频讲义04

郭克华J2ME移动开发实战教学视频讲义第4章TextBox,Ticker和Alert郭克华所有作品由ChinaSEI独家发布。

网址为:对应视频可在上下载。

本讲义属于郭克华团队网友整理,比视频略有扩充,如果有文字等小错,请多包涵。

在不盈利的情况下,欢迎免费传播。

版权所有.郭克华本讲义经过修正、扩充,连同视频,由清华大学出版社出版。

详细可查询/49067,/product.aspx?product_id=20742080第4章 TextBox,Ticker和Alert【本章导读语】Displayable的子类可以充满整个界面。

首先我们复习一下Displayable的结构。

打开文档就可以发现,Displayable的继承结构如下:我们知道,Displayable的子类中,Canvas是用于创建低级界面,将在后面讲解;Screen 用来创建高级界面。

在Screen的子类中,除了前一章提到的Form和List之外,还有TextBox(文本框)和Alert(提示框)。

在J2ME程序开发中,文本框TextBox是一个常见的组件,在短信界面、信息处理界面中应用很广;在复杂的J2ME操作系统中,提示界面Alert 也能起到良好的作用。

因此,本章首先讲到的是javax.microedition.lcdui.Displayable的两个子类:文本框:提示框:另外,为了对界面进行渲染,滚动条Ticker也可以起到很大的作用。

不过,滚动条并不是Displayable的子类,不能单独出现,它只能对Displayable起到渲染的功能。

滚动条所对应的类为:本章首先对TextBox进行系列阐述,然后利用Ticker对界面进行一定的渲染,最后详细讲解Alert的用法。

【4-1】用TextBox开发短信界面〖实例需求〗javax.microedition.lcdui.TextBox也是Displayable的子类,也能充满整个界面。

郭克华J2EE框架实战教学课件_38设计模式(1)

郭克华J2EE框架实战教学课件_38设计模式(1)

Factory -工厂模式小结
客户类和工厂类分开.消费者任何时候需 要某种产品,只需向工厂请求即可.消费 者无须修改就可以接纳新产品. 缺点是当产品修改时,工厂类也要做相应 的修改.怎样克服?Spring可以克服 工厂模式主要应用于模块间调用时模块可 调用接口较多的情况;实例化一个对象可 能要进行复杂操作的情况 练习:有一个复杂的Frame,一个复杂的 Jframe,现在客户传入参数1,2来决定得到 Frame还是Jframe,要求客户不关心Frame 和Jframe的生成过程,怎么设计?
J
oy Java!
guokehua@
38设计模式(1)
郭克华J2EE框架实战教学视频
J 什么是模式
降低耦合性 增加灵活性
guokehua@
模式提供了一个解决方案,它是一种设计 方法,而不是一种编程技术
Spring提供了降低耦合性的一种工具 设计模式提供了常见应用中降低耦合性的设计 思想
郭克华J2EE框架实战教学视频
J 建造模式
guokehua@
在Windows里面打开计算器,如果要 你编写这个应用,你如何做? 写一个类,在构造函数里面将各个控 件加上去? 考虑如下问题 将数字键全部改颜色 将最左边四个键放在最右边 很明显,事情变得非常麻烦
郭克华J2EE框架实战教学视频
郭克华J2EE框架实战教学视频
J
guokehua@
工ቤተ መጻሕፍቲ ባይዱ模式
场景:在Action里面,我们要调用CustomerDAO的 login方法,传统情况下你用什么代码?
CustomerDAO cdao = new CustomerDAO(); cdao.login();
考虑以下情况:
郭克华J2EE框架实战教学视频

《手持移动设备J2ME应用开发》第4章

《手持移动设备J2ME应用开发》第4章
<MTSE1.0>
4.1.1Display类的常用函数
Displayable中MIDP1.0就定义的函数有: boolean isShown() void addCommand(Command cmd) void removeCommand(Command cmd) void setCommandListener(CommandListener l) Displayable中MIDP2.0新添加的函数有: String getTitle() public void setTitle(String s) Ticker getTicker() public void setTicker(Ticker ticker) public int getWidth() public int getHeight() protected void sizeChanged(int w,int h)
处理高级别事件
所谓的高级别事件,就是指在处理高级界面上的控件时候 需要处理的事件。每一个高级界面的Dislayable对象都有 一个相应监听器,该监听器用来监听控件是否已经被触发 了相关的事件。本小节仅仅介绍Command对象的事件开 发,其他控件的事件开发将结合相关小节的具体内容再进 行详细介绍。 要处理按钮高级别事件,程序必须继承一个命令监听器接 口类CommandListener类,具体操作如下所示: public class HelloWorld extends MIDlet implements CommandListener{ }
<MTSE1.0>
按钮、菜单编程基础
在介绍事件开发之前首先了解基本的Command(命令)编 程。Midlet的javax.Microedition.lcdui包提供了一个命令 Command类,用来进行屏幕上按钮的相关开发, Command对象既可以显示为一个与键盘特定键相关联的 按钮,又可以作为屏幕菜单的一个菜单项。由于手机程序 功能有限,因此并没有提供像Windwos程序一样的菜单控 件,而是当屏幕需要显示多个按钮的时候,自动生成一个 菜单供用户选择使用。 创建一个新的Command对象需要调用Command对象的构 造函数,构造函数的的语法如 下所示: new Command(Labels,Type,Priority);

最好的JAVA视频下载网站3

最好的JAVA视频下载网站3
/read.php?tid=3020&u=1007
【.NET平台的AJAX】
/read.php?tid=2931&u=1007
【青岛软件实训】【.net培训资料】
/read.php?tid=2247&u=1007
《C语言速成3.0视频教程》V3.0[ISO]
/read.php?tid=590&u=1007
《VC++深入详解》视频教学DVD光盘
/read.php?tid=1338&u=1007
新东方J2ee系列
/read.php?tid=531&u=1007
树人J2EE高级框架实战教学(视频教程)郭克华
/read.php?tid=620&u=1007
官方原创---聊天系统开发全程视频(附带代码+说明文档)
地址:/read.php?tid=699&u=1007
【0610】【新东方】【J2ee系列】
地址:/read.php?tid=531&u=1007
【北大】【ASP课程超高速下载(经典)】【全】
/read.php?tid=1698&u=1007
【北大青鸟 】【 视频(主讲:于海涛)】【共32 讲】
/read.php?tid=475&u=1007
【0610】【MLDN】【 J2EE 开发视频】【1-45讲】
地址:/read.php?tid=443&u=1007
【0609】【尚学堂】【AJAX+XML部分】【全套】
地址:/read.php?tid=13&u=1007
/?u=1007

《台湾中华大学视频课程套装》目录{DAE48F20-9942-4

《台湾中华大学视频课程套装》目录{DAE48F20-9942-4

《台湾中华大学视频课程套装》是台湾中华大学田庆诚教授和陈栋洲教授给给台湾知名电子企业员工培训讲课视频,授课的企业包括:明基电通、迅利电子、宇通全球等。 由于是给企业员工培训、且授课老师自己也有着多年的工程实践经验,所以视频讲课内容尽量摒弃繁琐的数学推导、抽象的概念,多从工程实践出发,以通俗易懂的语言和直观工程实例来向学员讲述微波射频电路和数字通信系统相关知识。是从事微波射频电路设计和通信系统设计相关工程技术人员不可多得的经典学习教程。 课程套装包括共5套课程视频课程,课程都是中文讲解,且每套视频课程我们都提供与之配套的课程讲义。这些课程分别为: TW01 射频电路基础 台湾中华大学田庆诚教授给某公司员工培训的课程视频,讲解了阻抗匹配、Smith圆图工具、S参数、矢量网络分析仪以及传输线效应等基础的射频应用知识,是射频初学者或入门者的最佳学习教程。教程共分6部分,12课时,主要内容为: 1. 阻抗匹配基础 (2课时) 2. Smith圆图 (2课时) 3. S参数和矢量网络分析仪 (3课时) 4. 阻抗匹配网络之一 (1课时) 5. 阻抗匹配网络之二 (2课时) 6. 传输线效应和高速电路PCB设计 (2课时) 注:该套课程第一讲开头由于受到干扰,开始20分钟左右会有比较大的噪声干扰,后面全部正常。 TW02 射频放大器设计 台湾中华大学田庆诚教授给宇通全球员工培训的视频讲课内容,因为讲课老师有着多年的工程实践经验,而且又是给企业员工培训,所以和大陆高校呆板的理论讲解不同,该视频课程尽量摒弃繁琐的数学推导,多结合工程实践,以通俗易懂的语言和直观的理解讲述了射频放大器的关键性能指标定义,低噪声放大器、功率放大器和宽带放大器的实际工程设计方法。是微波射频工程师不可多得的经典学习教程。教程共分10部分,43课时,主要内容为: 第0章: 射频放大器介绍 (3课时) 第1章: 有源器件的分析和S参数 (8课时) 第2章: 放大器的阻抗匹配技术 (9课时) 第3章: 放大器的功率增益 (5课时) 第4章: 放大器的稳定性 (4课时) 第5章: Smith圆图上的增益圆 (2课时) 第6章: 晶体管/场效应管的偏置电路设计 (4课时) 第7章: 小信号放大器设计实例 (4课时) 第8章: 低噪声放大器(LNA)设计 (2课时) 第9章: 宽带放大器设计 (2课时) TW03 高频信号传输特性与电路量测 台湾中华大学田庆诚教授给某台湾工研院材化所员工培训的课程视频,多结合工程实践,注重射频基础概念的讲解,通俗易懂,课程共20课时, 分9部分讲解,主要内容如下: 零、课程内容概述 一、高频/射频介绍 二、基础电路理论 三、阻抗匹配 四、传输线理论 五、实际使用的传输线 六、时域分析 七、频域分析 八、高频电路的量测 TW04 射频系统基础知识专题讲座 台湾中华大学田庆诚教授举办的关于无线通信射频系统的专题讲座,讲座全长2小时10分钟。主要讲述模拟射频通信系统、数字无线通信系统、射频收发信机、射频接收机、射频发射机、大功率系统和WLAN 台湾中华大学陈栋洲教授给明碁电通和智捷科技讲授的OFDM和WLAN技术的课程视频,课程全长11小时零五分钟,讲述了数字通信系统概念、调制解调、OFDM调制、以及WLAN(802.11a/b/g、802.16)等完整内容。课程除了提供视频讲解外同时还提供完整的课程讲义;课程共7章,内容如下: 第一章:数字通信系统导论 I 第二章:数字通信系统导论 II 第三章:调制和解调 第四章:OFDM调制技术 第五章:WLAN 802.11a 技术 第六章:WLAN 802.11b/g 技术 第七章:WMAN 802.16 技术

J2ME程序开发全方位基础讲解汇总

J2ME程序开发全方位基础讲解汇总

一、J2M E中需要的J a v a基础知识现在有大部分人,都是从零开始学J2M E的,学习J2M E的时候,总是从J a v a 基础开始学习,而且现在讲J a v a基础的书籍中都是以J2S E来讲基础,这就给学习造成了一些不必要的麻烦,下面将J2M E中用到的和不需要的J a v a基础知识做一个简单的说明:J2M E中使用到的J a v a基础知识:1、J a v a语法基础:包括基本数据类型、关键字、运算符等等2、面向对象的思想:类和对象的概念,继承和多态等等。

3、异常处理4、多线程J2M E中没有用到的J a v a基础知识:1、J D K中j a v a c和j a v a命令的使用2、J a v a基础中的很多类在J2M E中没有,或者类中的方法做了大量的精简。

所以建议在J2M E中熟悉类库。

3、A p p l e t、A W T、S w i n g这些知识在J2M E中根本使用不到。

简单说这么多,希望学J2M E的朋友们能少走一些弯路,不足之处希望大家积极指正和补充。

二、J2M E中暂时无法完成的功能列一些J2M E中暂时无法完成的功能,希望大家能积极补充:1、在手机中不更改代码实现移植,主要指游戏。

2、动态修改按钮文字。

3、在C a n v a s上接受中文输入。

4、操作本地资源、例如地址本、已收短信息等。

5、制作破坏性的手机病毒。

6、其他等待大家来补充。

三、J2M E的跨平台性J2M E技术源于J a v a,所以也具有J V M的优势,可以在支持J a v a的平台上进行移植,但是现在的J2M E技术在跨平台上却做的很糟糕,我们来简单看一下原因:1、手机的屏幕尺寸不一:这个主要在界面制作上。

如果你使用的是高级用户界面,比如你做的是应用开发或者用户登陆、用户注册这样的通用功能时,一般没有什么问题。

如果你使用的是低级用户界面,比如你做的是游戏,那么你就需要考虑这个问题了。

2、厂商的扩展A P I不统一:例如N o k i a的扩展A P I类库U I系列,在别的手机上或者没有实现,或者包名不同等等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

郭克华J2ME移动开发实战教学视频讲义第20章 HTTP编程郭克华所有作品由ChinaSEI独家发布。

网址为:对应视频可在上下载。

本讲义属于郭克华团队网友整理,比视频略有扩充,如果有文字等小错,请多包涵。

在不盈利的情况下,欢迎免费传播。

版权所有.郭克华本讲义经过修正、扩充,连同视频,由清华大学出版社出版。

详细可查询/49067,/product.aspx?product_id=20742080第20章 HTTP编程【本章导读语】前面一章里面主要讲解了UDP编程,以及UDP编程中需要注意的问题。

在网络编程框架内,实际上还有一个系列:HTTP编程。

比如,我们在手机终端上通过输入个人信息,在WebServer上注册个人资料,就牵涉到MIDlet和HTTP服务器之间的通信。

本章将对MIDlet的HTTP编程进行讲解。

本章主要包括HTTP服务器的安装、MIDlet连接HTTP服务器,MIDlet和HTTP服务器之间的数据提交等。

本章用到的网络编程API主要是:【20-1】安装HTTP服务器〖实例需求〗以手机界面的登陆为例。

我们在手机上提交一个账号和密码给J2EE服务器,要求它能够查询数据库,能够返回我们是否登陆成功的信息。

从客户端的角度讲,登陆的终端可能是浏览器,也可能是J2SE的桌面应用程序,也可能是手机上的MIDlet,因此,整个体系结构就应该如图20-1所示:图20-1 体系结构要想让MIDlet连上服务器,必须首先安装J2EE服务器。

流行的J2EE服务器有很多,如Jboss、Tomcat、BEA WebLogic、IBM WebSphere等。

由于J2EE属于另一个技术标准,本书不展开叙述。

本节将以Tomcat5.5为例,来演示HTTP 服务器的安装。

〖开发过程〗第一步:获取Tomcat5.5。

在浏览器地址栏中输入:,可以看到Tomcat的可下载版本,如J2ME移动开发实战教程图20-2所示。

选择Tomcat5.5,可以根据提示下载。

图20-2 Tomcat下载页面下载之后,得到一个可执行文件,在本章中为:apache-tomcat-5.5.17.exe。

注意,你也可以下载压缩包,直接解压之后即可运行。

读者访问此页面时,可能显示的界面会稍有不同,读者可自行下载相应版本应用。

第二步:安装Tomcat。

(1)Tomcat安装双击下载后的安装文件,得到如图20-3的安装界面:图20-3 安装界面1选择“Next”,得到如图20-4的界面:x 2 x第20章 HTTP编程图20-4 安装界面2该界面中,选择“I Agree”。

出现如图20-5的界面:图20-5 组件选择界面该界面中主要是进行组件的选择,你可以选择是否安装案例或者文档,本文中我们使用默认选项,点击“Next”,出现如图20-6的界面:图20-6 安装目录选择选择安装目录。

点击“Next”,出现如图20-7的界面:x 3 xJ2ME移动开发实战教程图20-7 选择端口号在图20-7的界面中,选择Tomcat服务器运行的端口号,默认为8080,注意不要与系统中已经使用的端口号冲突。

点击“Next”,出现如图20-8的界面,在该界面中找到JDK 的安装目录,绑定JDK,最后点击“Install”即可进行安装。

图20-8 绑定JDK(2)安装目录介绍如果是默认安装,Tomcat安装完毕之后,在C:\Program Files\Apache Software Foundation\Tomcat 5.5下可以找到安装的目录,如图20-9所示:x 4 x第20章 HTTP编程图20-9 Tomcat安装目录Tomcat安装目录中,比较重要的文件夹或文件的内容详见表20-1所示。

更多内容大家可以参考Tomcat文档。

表1-1 JDK安装目录中文件或文件夹的内容文件夹/文件名称内容bin 支持Tomcat运行的常见的exe文件conf Tomcat系统的一些配置文件logs 系统日志文件webapps 网站资源文件(3)测试Tomcat。

Tomcat安装完毕,怎样知道它已经安装成功了呢?我们可以首先打开Tomcat。

进入Tomcat安装目录下的bin目录,会发现里面有如下两个文件:这两个exe文件都可以打开Tomcat服务器,其中,tomcat5.exe是以控制台形式打开Tomcat,tomcat5w.exe是以窗口形式打开Tomcat。

双击tomcat5.exe,出现控制台界面,如图20-10所示:图20-10 Tomcat打开界面然后在浏览器地址栏输入:http://localhost:8080/index.jsp,正常情况下,可以得到如图20-11所示的页面。

x 5 xJ2ME移动开发实战教程图20-11 Tomcat测试页面实际上,该页面在硬盘上位于:Tomcat安装目录\webapps\ROOT中。

【20-2】MIDlet连接HTTP服务器〖实例需求〗上一节中已经讲述了HTTP服务器(Tomcat)的安装,接下来就可以让MIDlet连接到Tomcat了。

在本节中,服务器上有一个网页:index.jsp,要求让MIDlet能够下载网页的源代码,并显示。

本节的效果如图20-12所示:图20-12 程序效果x 6 x第20章 HTTP编程文本框内显示的是服务器端index.jsp的源代码。

〖开发过程〗第一步:连接到HTTP服务器。

HTTP连接是由javax.microedition.io.HttpConnection进行管理的,HttpConnection也是javax.microedition.io.Connection的子接口。

前面几章已经说过,javax.microedition.io.Connector专门负责建立各种连接,其中也包括HTTP连接。

在Connector的文档内,利用open函数来获得连接:该函数传入一个HTTP连接字符串,返回一个Connection对象。

HTTP连接字符串的格式是:http://IP地址:端口/资源路径如:http://127.0.0.1:8080/index.jsp。

其中,127.0.0.1是服务器的IP地址。

当然,该函数的返回值需要强制转换为javax.microedition.io.HttpConnection类型。

例如,如下代码就可以连接到http://localhost:9999/index.jsp,并返回连接对象hc。

HttpConnection hc =(HttpConnection)Connector.open("http://localhost:9999/index.jsp");第二步:获取HTTP连接的基本信息。

打开HttpConnection文档,会发现里面有如下重要函数:1:得到响应代码:2:得到响应消息:3:得到协议名称:4:得到主机名称:5:得到端口号:6:得到请求的URL:7:得到URL中的查询部分:8:得到请求方法:9:设置请求方法:x 7 xJ2ME移动开发实战教程请求方法可以在如下字符串中选择:1:HttpConnection.GET2:HttpConnection.POST3:HttpConnection.HEAD这里面的一些概念,希望读者参考HTTP的基本原理。

现在用一段代码来测试这些功能。

建立项目Prj20_1,在里面建立MIDlet1,代码改为:MIDlet1.javapackage prj20_1;import javax.microedition.io.Connector;import javax.microedition.io.HttpConnection;import javax.microedition.midlet.MIDlet;import javax.microedition.midlet.MIDletStateChangeException;public class MIDlet1 extends MIDlet {protected void startApp() throws MIDletStateChangeException {try{//连接到HTTP服务器=HttpConnectionhc(HttpConnection)Connector.open("http://localhost:8080/index.jsp?m=3&n=5");System.out.println("响应代码:" + hc.getResponseCode());System.out.println("响应消息:" + hc.getResponseMessage());System.out.println("主机:" + hc.getHost());System.out.println("端口:" + hc.getPort());System.out.println("协议:" + hc.getProtocol());System.out.println("URL:" + hc.getURL());System.out.println("查询字符串:" + hc.getQuery());System.out.println("请求方法:" + hc.getRequestMethod());}catch(Exception ex){ex.printStackTrace();}}protected void destroyApp(boolean arg0) throws MIDletStateChangeException {}protected void pauseApp() {}}运行这个MIDlet,出现一个手机界面,控制台上打印:x 8 x第三步:和HTTP服务器的通信。

以上所述还只是连接到HTTP服务器并得到基本信息,接下来应该是与HTTP服务器的通信。

通信包括读和写,对于客户端和服务器端,如果将数据传给对方,就称为写,就用到输出流;反之,如果从对方处得到数据,就称为读,用到输入流。

打开HttpConnection文档,会发现其从javax.microedition.io.InputConnection中继承了2个函数:1:打开输入流,返回InputStream:2:打开输入流,返回DataInputStream:一般我们使用第2个函数。

其对读操作支持得更强大一些。

第2个函数返回javax.microedition.io.DataInputStream对象,查看文档,可以发现里面有许多read函数。

相关文档
最新文档