android与本地tomcat的通信,实现登录功能
来源:互联网 发布:c语言的开发环境 编辑:程序博客网 时间:2024/05/31 19:16
最近需要实现android与部署在本地tomcat上的java web项目之间进行通信的功能,在这里总结一下。
首先,由于是与本地服务器通信,所以我是采用android模拟器实现的。常用的模拟器有夜神,海马玩等(官方模拟器用着比较卡) 但是夜神无法访问到本地tomcat,所以我
使用的海马玩,本地服务器的地址是10.0.2.2。
夜神连接androidstudio:cmd进入到Nox\bin下,nox_adb.exe connect 127.0.0.1:62001
海马玩连接androidstudio:cmd进入Droid4X 下,adb connect 127.0.0.1:26944。 当然端口号随意。
java web服务端我使用的是springmvc+mybatis+spring。
思路:
android端的话,我使用的是HttpUrlConnection与服务端进行通信,传递的是json信息。主要代码如下:
public void postRequest() { try { jsonHandle=new JsonHandle(); jsonObject.put("username",username); jsonObject.put("password",password); data=jsonObject.toString().getBytes();//这是要发送给服务端的json信息,里面有用户名以及密码。 URL url=new URL(ip);//ip是后端具体的处理登录的url,例如http://10.0.2.2:8080/xxx/mvc/login,记得加上http。 HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection(); httpURLConnection.setConnectTimeout(3000); httpURLConnection.setDoInput(true); httpURLConnection.setDoOutput(true); httpURLConnection.setRequestMethod("POST"); httpURLConnection.connect(); OutputStream outputStream = httpURLConnection.getOutputStream(); outputStream.write(data); outputStream.flush(); //发送data //读取服务端的返回信息。 InputStream is=httpURLConnection.getInputStream(); BufferedReader reader = new BufferedReader(new InputStreamReader(is)); StringBuilder sb = new StringBuilder(); String line = null; try { while ((line = reader.readLine()) != null) { sb.append(line + "/n"); } } catch (Exception e) { e.printStackTrace(); } finally { try { is.close(); } catch (Exception e) {e.printStackTrace(); } } }catch (Exception e){ e.printStackTrace(); } }
服务端,使用springmvc处理请求。代码如下:
@Controller@RequestMapping(value = "/mvc")public class LoginController {@RequestMapping(value = "/login",method=RequestMethod.POST)public void login(HttpServletRequest req,HttpServletResponse rep) throws IOException{BufferedReader br = null;try {br = req.getReader();//接收信息} catch (IOException e1) {// TODO Auto-generated catch blocke1.printStackTrace();}String line = null;String data = "";while ((line = br.readLine()) != null) {data += line;}try {rep.getOutputStream().write("信息".getBytes()); //发送信息。} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}
一般传递方式都是post.这样子,就达到了通信的目的,再加上一些逻辑代码,就能做到登录检测等功能啦
阅读全文
0 0
- android与本地tomcat的通信,实现登录功能
- Android客户端与Tomcat服务器通信实现登录验证
- android中与tomcat之间的通信--登录系统
- 利用html5的本地存储功能实现登录用户信息保存
- 利用html5的本地存储功能实现登录用户信息保存
- 使用OrmLite数据库实现本地的账号登录,注册功能
- Android与本地Tomcat的连接
- Android与本地Tomcat的连接
- Android登录功能实现
- ASP与ACCESS登录功能的实现
- 用户注册与登录功能的实现
- android 自动登录功能的实现
- HTML5本地储存追加利用html5的本地存储功能实现登录用户信息保存
- android SQLite实现本地登录注册功能,SQLite简单应用(android studio)
- 登录功能的实现
- Android本地实现已读未读功能
- 【Android】 使用okhttp实现注册登录功能(与服务器端)
- 实现本地主机与阿里云服务器的UDP通信
- 李德毅详解:无人驾驶的核心在驾驶脑|中国机器人峰会
- 周鸿祎回应“踏空论”:智能硬件过去的思路是错误的
- linux下的find文件查找命令与grep文件内容查找命令
- 本机关联域名
- 消息中间件kafka+zookeeper集群部署、测试与应用
- android与本地tomcat的通信,实现登录功能
- 数据结构入门学习系列-6(链表合并与多项式合并算法)
- BeanUtils.copyProperties()笔记
- Linux常用命令之grep
- 讯飞语音:组件未安装(错误码21002)
- Linux命令(压缩,解压tar)
- 占据ADAS市场75%的份额,Mobileye是如何做到的?
- 奥兰多枪击案发生后让你五分钟报平安的Safety Check是怎么实现的?
- IEEE数字感知主席:VR迎来了第二春,但技术仍很多空白