版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、本文介绍了如何使用AndroidSSHJSONAD:笔者以前是学的Java EE,由于工程需要要开发Android,所以临时补了一个多星期,主要是手机端和效劳器端交互,双向开发的。首先在效劳器端,我承受的是SSHstruts2 集合了JSON的信息交互承受的JSON 来传输,由于在效劳器端用了Struts 2,所以我就用装了一个JSON插件。这样,很轻易的就把效劳器端的信息用JSON 的形式发送到了手机端。以下是代码:首先,在效劳器端搭建好SSH 框架,具体细节就不在陈述。struts.xml 配置如下:sult6.gin“result手机端的代码如下:可以达达节约手机和效劳器的交互,用单例实
2、现的:1. packagecom.jclick.cache;2.3. importcom.jclick.bean.User;4.5. publicclassCache6.7. privateUserUser;8.9. privateCache10.11. 12. /*构造单例*/privatestaticclassCacheHolderprivatestaticfinalCacheINSTANCE=newCache;15. publicCachegetInstancereturnCacheHolder.INSTANCE;18. publicUsergetUserreturnUser;21. p
3、ublicvoidsetUser(UserUser)this.User=User;24. 25.26. 27.28. packagecom.jclick.cache;29.30. importcom.jclick.bean.User;31.32. publicclassCache9./*构造单例*/privatestaticclassCacheHolderprivatestaticfinalCacheINSTANCE=newCache;42.publicCachegetInstancereturnCacheHolder.INSTANCE;45.public
4、UsergetUserreturnUser;48.publicvoidsetUser(UserUser)this.User=User;51.52.53. 接着开头书写手机端的协议1. tocol;2.importjava.io.BufferedReader;importjava.io.InputStreamReader;importjava.util.ArrayList;7.importorg.apache. . Response;importorg.apache. .NameValuePair;importorg.apache. .client. C
5、lient;importorg.apache. .client.entity.UrlEncodedFormEntity;importorg.apache. .client.methods. Post;importorg.apache. .impl.client.Default Client;importorg.apache. .message.BasicNameValuePair;importorg.json.JSONException;17.publicclassBaseProtocol20.private Client Client;private Post Request;24.25.p
6、rivateListnameValuePair=newArrayList();26.BaseProtocol Client=newDefault Client;29. 30.31. /*32. *向效劳器端发送恳求33. *paramurl*throwsException36. */protectedvoidpack(Stringurl)throwsException Client=newDefault Client;40. Request.setEntity(newUrlEncodedFormEntity(nameValuePair);response= Client.execute( Re
7、quest);43. 44.45. /*46. *得到返回数据47. *paramurl*return*throwsException51. */protectedvoidparsethrowsException55.BufferedReaderbufferedReader2=newBufferedReader(newInputStreamReader(response.getEntity.getContent);for(Strings=bufferedReader2.readLine;s!=null;s=bufferedReader2.readLine)sb.append(s);61. 62
8、. 63. 64.65. /*66. *向效劳器发送信息67. *paramkey*paramvalue70. */publicvoidaddNameValuePair(Stringkey,Stringvalue)nameValuePair.add(newBasicNameValuePair(key,value);73. 74.75. /*. 对象数据模型77. *return*throwsJSONException80. */publicJSONObjectgetJSONthrowsJSONExceptionreturnnewJSONObject(sb.toString);83. 84.85
9、. 86.87. tocol;88.importjava.io.BufferedReader;importjava.io.InputStreamReader;importjava.util.ArrayList;93.importorg.apache. . Response;importorg.apache. .NameValuePair;importorg.apache. .client. Client;importorg.apache. .client.entity.UrlEncodedFormEntity;importorg.apache. .cl
10、ient.methods. Post;importorg.apache. .impl.client.Default Client;importorg.apache. .message.BasicNameValuePair;importorg.json.JSONException;103.publicclassBaseProtocol106.private Client Client;private Post Request;110.111.ir;112.BaseProtocol Client=newDefault Client;115.116.117./*118.*向效劳器端发送恳求119.*
11、paramurl*throwsException122.*/protectedvoidpack(Stringurl)throwsException Client=newDefault Client;126. Request.setEntity(newUrlEncodedFormEntity(nameValuePair);response= Client.execute( Request);129.130.131./*132.*得到返回数据133.*paramurl*return*throwsException137.*/protectedvoidparsethrowsException141.
12、BufferedReaderbufferedReader2=newBufferedReader(tent);dReader2.readLine)sb.append(s);50.151./*152.*向效劳器发送信息153.*paramkey*paramvalue156.*/publicvoidaddNameValuePair(Stringkey,Stringvalue)nameValuePair.add(newBasicNameValuePair(key,value);159.160.161./*162.对象数据模型163.*return*throwsJSONExce
13、ption166.*/publicJSONObjectgetJSONthrowsJSONExceptionreturnnewJSONObject(sb.toString);169.170.接着是登陆协议,在这里我只是模拟登陆使用的一个类,仅供大家参考:1. tocol;2.3. importorg.json.JSONObject;4.5. importcom.jclick.bean.User;6.7. publicclassLoginProtocolextendsBaseProtocol8.9. privatefinalstaticStringURL=
14、“ :/localhost:8080/test/login“;10.publicbooleancheckLogin(Userusr)trypack(URL);parse;JSONObjectobj=this.getJSON;if(obj.getString(“result“).equals(“failed“)returnfalse;elsereturntrue;20. catch(Exceptione)e.printStackTrace;returnfalse;24. 25. 26.27. 28.29. tocol;30.31. importorg.j
15、son.JSONObject;32.33. importcom.jclick.bean.User;34.35. publicclassLoginProtocolextendsBaseProtocol36.37.privatefinalstaticStringURL=“ :/localhost:8080/test/login“;38.publicbooleancheckLogin(Userusr)trypack(URL);parse;JSONObjectobj=this.getJSON;if(obj.getString(“result“).equals(“failed“)returnfalse;
16、elsereturntrue;48.catch(Exceptione)e.printStackTrace;returnfalse;5. 然后是User 实体类,主要用于保存用户信息:1. packagecom.jclick.bean;2.publicclassUserprivateStringusername;privateStringpassword;publicStringgetUsername8. publicvoidsetUsername(Stringusername)this.username=username;11. publicStringgetPasswor
17、dreturnpassword;14. publicvoidsetPassword(Stringpassword)this.password=password;17. 18.19. 20.21. packagecom.jclick.bean;22.publicclassUserprivateStringusername;privateStringpassword;publicStringgetUsernamereturnusername;28.publicvoidsetUsername(Stringusername)this.username=username;31.publicStringg
18、etPasswordreturnpassword;34.publicvoidsetPassword(Stringpassword)this.password=password;37.38.39. 最终就是LoginActivity登陆的代码:privatevoidcheckedDatausername=(EditText)findViewById(R.id.username).getText.toString();password=(EditText)findViewById(R.id.password).getText.toString();4.Useruser=newUser;user.setUsername(username);user.setPassword(password);LoginProtocollogin=newLoginProtocol;10.if(result)SpiderCache.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年桐乡市桐卫人力资源服务有限公司招聘4名劳务派遣人员备考题库及答案详解参考
- 2026年江苏港口集装箱集团有限公司招聘备考题库及答案详解参考
- 2026年深圳市信银企业服务有限公司太原分公司招聘备考题库及答案详解一套
- 2026年长虹镇卫生院招聘护士1名备考题库及答案详解1套
- 如何规范转包分包制度
- 酒窖橡木桶管理制度规范
- 出口企业清关制度规范
- 锯石机安全管理制度规范
- 废气加药制度规范标准
- 中医眼科转诊制度规范
- 特殊作业安全管理监护人培训课件
- 成本限额及配置标准
- 房屋市政工程生产安全重大事故隐患判定标准(2024版)宣传画册
- 2020高职院校教学能力比赛大学语文课程实施报告(定)
- 化工厂叉车安全操作应急预案
- 长期合作协议书合同书
- DB11∕T 353-2021 城市道路清扫保洁质量与作业要求
- 浙江省小型液化天然气气化站技术规程
- 生物化学基础与应用智慧树知到期末考试答案章节答案2024年四川工商职业技术学院
- GB/T 2910.11-2024纺织品定量化学分析第11部分:某些纤维素纤维与某些其他纤维的混合物(硫酸法)
- GIS组合电器概述
评论
0/150
提交评论