Android客户端:SSH+Struts2 实现手机与服务器JSON交互示例

4星 · 超过85%的资源 需积分: 9 659 下载量 194 浏览量 更新于2024-09-16 7 收藏 125KB DOC 举报
本文档详细介绍了如何在Android客户端与服务器之间进行交互开发的一个实际示例,主要使用SSH框架和Struts2框架,以及JSON作为数据传输协议。首先,我们从服务器端的准备工作开始: 1. **服务器端架构**:服务器端选择了SSH(Simple System for Heterogeneous Networking)框架,结合Struts2框架。Struts2内置了JSON插件,使得服务器能够将数据以JSON格式轻松地发送到客户端。Struts2的配置文件(struts.xml)定义了一个名为"login"的包,该包下的LoginAction负责处理登录请求,并通过`<result>`标签指定了返回结果时使用JSON格式。 2. **服务器端代码片段**:在struts.xml中,配置了具体的action类和方法,例如: - `<package name="login" extends="json-default">` - `<action name="login" class="com.jclick.test.LoginAction" method="login">` - `<result name="json" type="json" includeProperties="result">` 接下来,是手机端客户端的开发部分: 3. **客户端缓存优化**:为了减少频繁的服务器请求,客户端实现了一个`Cache`类,采用单例模式。这个类负责存储和管理手机需要的数据,如用户信息。`Cache`提供`getUser()`方法获取缓存中的用户数据,`setUser(User user)`用于设置缓存数据,通过这种方式,可以显著降低服务器与手机之间的通信负担。 4. **客户端代码结构**:在`com.jclick.cache.Cache`包中定义了`Cache`类,包括私有成员变量`User user`,单例模式的创建方法`CacheHolder`,以及获取和设置用户数据的方法。 总结来说,本文提供了构建一个Android客户端与基于SSH/Struts2服务器交互的开发示例,通过Struts2的JSON支持简化数据传输,同时在客户端引入缓存机制来提升性能。开发者可以根据这些步骤和代码片段,学习并应用到实际的项目中,以实现高效、稳定的信息交换。