android与tomcat服务器交互实例
来源:互联网 发布:极客学院 python 编辑:程序博客网 时间:2024/05/25 18:09
原URL:http://www.cnblogs.com/feifei1010/archive/2012/09/05/2671557.html
一、教程目的。
本教程的目的在于教会怎么完成android与tomcat服务器的数据交互。
二、开发环境。
Myeclipse8.5+jdk1.6+android2.3
三、开发步骤。
(1)新建一个web项目,并添加struts2支持。
new->webproject
1在项目名称右键,Myeclipse->Add Struts Capabilities
struts specification 选择struts2.1
然后选择完成
2新建一个action类
package
action;
import
java.io.IOException;
import
javax.servlet.http.HttpServletRequest;
import
javax.servlet.http.HttpServletResponse;
import
org.apache.struts2.ServletActionContext;
import
com.opensymphony.xwork2.ActionSupport;
public
class
AndroidAction
extends
ActionSupport {
HttpServletRequest request=ServletActionContext.getRequest();
HttpServletResponse response = ServletActionContext.getResponse();
@Override
public
String execute()
throws
Exception {
// TODO Auto-generated method stub
return
super
.execute();
}
public
void
test()
{
String str = request.getParameter(
"test"
);
System.out.println(str);
writeOut(
"hello android"
);
}
/**
* 返回值
* @param jsonStr
*/
public
void
writeOut(String jsonStr) {
response.setContentType(
"html/txt"
);
response.setCharacterEncoding(
"utf-8"
);
response.setHeader(
"Pragma"
,
"no-cache"
);
response.setHeader(
"Cache-Control"
,
"no-cache, must-revalidate"
);
response.setHeader(
"Pragma"
,
"no-cache"
);
try
{
response.getWriter().write(jsonStr);
response.getWriter().flush();
response.getWriter().close();
}
catch
(IOException e) {
e.printStackTrace();
}
}
}
3.修改struts.xml
<?xml version=
"1.0"
encoding=
"UTF-8"
?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"
"http://struts.apache.org/dtds/struts-2.1.dtd"
>
<struts>
<
package
name=
"androidaction"
extends
=
"json-default"
namespace=
"/androidaction"
>
<action name=
"test"
class
=
"action.AndroidAction"
method=
"test"
>
<result type=
"json"
name=
"success"
>
<param name=
"contentType"
>text/html</param>
</result>
<result type=
"json"
name=
"error"
>
<param name=
"contentType"
>text/html</param>
</result>
</action>
</
package
>
</struts>
4.发布web项目 AndroidWebserver上右键 run as Myeclipse server application
(2)新建一个android项目。
记得要加入commons-httpclient-3.1.jar依赖包
新建一个链接工具类ConnUtil.java代码如下
public
class
HelloApacheServerActivity
extends
Activity {
/** Called when the activity is first created. */
@Override
public
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.main);
final
ConnUtil cu =
new
ConnUtil();
Button btn = (Button)findViewById(R.id.sendMessage);
btn.setOnClickListener(
new
OnClickListener(){
@Override
public
void
onClick(View arg0) {
String s = cu.sayHello();
Toast.makeText(HelloApacheServerActivity.
this
,s,Toast.LENGTH_SHORT).show();
}
});
}
}
对了,android项目要记得添加网络访问权限
<uses-permission android:name="android.permission.INTERNET"/>
最后验证一下
按下"say hello"按钮 在myeclipse 的console下可以看到"hello server" 这是从android端发来的消息
同时android会弹出一个Toast "hello android"这是从服务器返回的消息。
最后 完整工程下载:
http://files.cnblogs.com/feifei1010/Desktop.zip
- android与tomcat服务器交互实例
- android与tomcat服务器交互实例
- Android客户端与PC服务器通过socket进行交互实例
- Android客户端与PC服务器通过socket进行交互实例
- Android客户端与PC服务器通过socket进行交互实例
- Android客户端与PC服务器通过socket进行交互实例
- android 与服务器交互
- Android与服务器交互
- Android与服务器交互
- Android与js交互实例
- Android与js交互实例
- Android与js交互实例
- Android与js交互实例
- Android与js交互实例
- Android与js交互实例
- Android与js交互实例
- Android与js交互实例
- Android与js交互实例
- 各种排序算法的稳定性和时间复杂度小结
- Codeforces 144D. Missile Silos 最短路
- 关于使用外部中断4进行miller2的思考
- Silverlight创建桌面客户端应用程序独立安装包(同时打包Silverlight运行时和Xap应用程序文件)
- 《鸟哥的linux私房菜 基础篇》第七章读书笔记(中)--常见档案内容查阅命令,chattr,lsattr,SUID,SGID,SBIT,file
- android与tomcat服务器交互实例
- Objective-C 关于内存管理的一些见解
- Python 中单引号、双引号和三双引号的区别
- WCDMA HSPA(3)
- CXImage的基本使用
- 各种排序算法比较
- 软件测试面试题及解析(九)
- 如何复制Windows弹出框文字内容
- QWebView加载html打印出现文字重复的原因