已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
说到J2ME网络编程的两种方法,相信多有进行Java培训的学员都不会陌生。这个是java培训中较难理解的一个地方,下面就让达内的讲师为学员们介绍。说到J2ME网络编程的两种方法,相信多有进行Java培训的学员都不会陌生。这个是java培训中较难理解的一个地方,下面就让达内的讲师为学员们介绍。本文描述了在J2me中开发主要使用的网络连接方法,分别详细介绍了使用http和socket两种方法。HttpConnection首先我们先来看一个简单的例子吧:主要用到的java包:javax.microedition.io.*;publicStringrequestGET(StringURLString,StringURL)throwsIOException/=/URLString是HTTP地址,URL为后面的参数/这里的例子是发送用的用户名和密码到服务器端进行用户验证/比如StringURLString=:8080/login.jsp;/StringURL=?Name=+this.txtName+&Pass=+this.txtPass/=HttpConnectionhpc=null;DataInputStreamdis=null;booleannewline=false;Stringcontent=;try/=/建立连接/=hpc=(HttpConnection)Connector.open(URLString+URL);hpc.setRequestMethod(HttpConnection.GET);dis=newDataInputStream(hpc.openInputStream();intcharacter;/=/读取返回的HTTP内容/=while(character=dis.read()!=-1)if(char)character=)newline=true;continue;elseif(char)character=n&newline)content+=n;newline=false;elseif(newline)content+=+(char)character;newline=false;elsecontent+=(char)character;newline=false;catch(IOExceptione)System.out.print(ERROR:+e);finallyif(hpc!=null)hpc.close();hpc=null;if(dis!=null)dis.close();/=/由于内容可能有中文,所以在接受到信息后要对内容进行字符集的转换/=content=(unicodeTogb2312(content).trim();returncontent;publicstaticStringunicodeTogb2312(Strings)if(s=null)return;if(s.equals()returns;tryreturnnewString(s.getBytes(ISO8859_1),gb2312);catch(Exceptionuee)returns;以上就是一个简单的HTTP连接并且从服务器获取响应信息的例子,应该很简单了吧。客户端就是上面那个样子,服务器端只要配置好IIS,增加一个网页来对客户端的请求做出响应就行了,其实跟一般的网页请求没有多大区别,很简单吧!上面的Socket客户端连接程序就应该算是完工了,下面是搭建服务器端对客户端的连接进行响应。建立服务器端程序,只需要有以下代码即可:SocketConnection下面还是从实例入手讲一下J2me的Socket编程。程序首先打开以IP地址为:6666的Socket连接,如果连接失败则抛出异常,程序结束。如果Socket连接成功,则继续。publicbooleanSocketConn(Strings)throwsIOException/=/s是Socket连接字符串/这里的例子是发送用的用户名和密码到服务器端进行用户验证/比如Strings=socket:/:6666/=privateStreamConnectionconServer;privateStringstrServerAddr;privatebooleanbConnected;conServer=null;strServerAddr=s;/连接地址bConnected=false;/连接状态tryconServer=(StreamConnection)Connector.open(strServerAddr);catch(Exceptionexception)System.out.println(Connectservererror);bConnected=false;returnfalse;bConnected=true;System.out.println(connectok!);returntrue;上面的Socket客户端连接程序就应该算是完工了,下面是搭建服务器端对客户端的连接进行响应。建立服务器端程序,只需要有以下代码即可:.try/建立端口为6666的socket服务器ServerSocketConnectionSocketSer;SocketSer=(ServerSocketConnection)Connector.open(socket:/:6666);/等待客户端连接SocketConnectionsc;/如有连接,则新增一个线程对连接进行处理sc=(SocketConnection)SocketSer.acceptAndOpen();.while(true)/对sc的InputStream和OutPutStream进行处理.在这里需要说明一下我的看法,手机通过Socket连接上服务器后,由于我用的是中国移动的号码,所以跑的是GPRS通道,我所建立的服务器连接所获得的客户端IP只是一个虚拟IP,而这个IP估计是以用户当前最近的移动机站的编码通过一些变化而产生的,所以当用户不停的移动的时候,IP也许会发生变化(这里我就不太清楚了),有兴趣的可以去看看“移动虚拟IP技术”相关的报道。本来我以前的想法是用户连接到服务器后只要IP不变就可以实现服务器向客户端广播数据,但是这个IP并非是长连接,服务器在广播数据的时候也许会有很大部分的客户端的IP会出现变化,所以最后还是采用由客户端主动发送信息的形式。感觉有点扯远了,还是回到正题吧。客户端在建立Socket连接成功后,即可向服务器发送信息,以下是发送信息模块protectedbooleansendData(byteabyte0)/自己替换System.out.println(send:+bConnected);/判断连接情况if(!bConnected)returnfalse;OutputStreamoutputstream=null;tryoutputstream=conServer.openOutputStream();/写信息到outputstream中outputstream.write(abyte0);/我的理解是强制送出所有已经写了的信息outputstream.flush();outputstream.close();catch(Exceptionexception)System.out.println(SendDataerror);bConnected=false;tryif(outputstream!=null)outputstream.close();/调用断开连接的函数disconnect();catch(Exceptionexception1)returnfalse;returntrue;下面是读取服务器响应的信息,其他的就不一一说了,把outputstream改为inputstream,然后使用inputstream的read方法就可以了。.inputstream=conServer.openInputStream();.以上就是J2me开发主要使用的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023年莆田辅警协警招聘考试备考题库及1套完整答案详解
- 2023年葫芦岛辅警协警招聘考试备考题库附答案详解(研优卷)
- 2023年辖县辅警招聘考试题库及完整答案详解
- 2024年大庆辅警协警招聘考试真题及答案详解参考
- 2024年临夏州辅警招聘考试真题及答案详解(名师系列)
- 2024年乐山辅警招聘考试真题带答案详解
- 2023年通辽辅警招聘考试真题含答案详解(预热题)
- 2024年周口辅警协警招聘考试备考题库含答案详解(新)
- 2024年哈尔滨辅警招聘考试题库含答案详解(培优a卷)
- 2024年南京辅警协警招聘考试备考题库及答案详解(全优)
- GB 5009.236-2016食品安全国家标准动植物油脂水分及挥发物的测定
- 点集拓扑学第二章拓扑空间与连续映射2-3.4
- 降本手法技术降本篇课件
- 律师事务所员工手册
- 工程洽商变更单
- 回忆我的母亲市公开课一等奖省名师优质课赛课一等奖课件
- 六年级校本课程总结
- 内部控制教案
- 《幼儿文学》幼儿文学的基本理论 课件
- 变电站满堂脚手架施工方案
- 教务管理系统建设方案
评论
0/150
提交评论