JAVA版Socket平台的设计文档
1. 总体设计
1.1 基本设计概念和处理流程
1.1.1 程序划分
主要分为服务端和客户端两个部分。
客户端部分又分为同步与异步两种模式。
1.1.2 处理流程描述
JAVA版接口平台主要实现与外部接口的服务端和客户端的通讯。并提供业务接口,允许基于当前内核实现各种业务。
2. 平台设计思想
2.1 业务无关性
本平台设计的核心思想是实现通讯平台的核心功能,尽可能使代码与业务剥离,提高代码的可重用性。
2.2 核心功能模块
本平台主要由几个核心模块所组成对各种业务的支持
2.2.1 通信模块
使用JAVA1.4+版本提供的无堵塞IO实现服务端和客户端的通讯,并提供同步和异步处理两种方式
2.2.2 线程池服务
使用了JDK 1.5 带的线程池,提供一个线程池的服务,为服务端或客户端提供多线程处理的功能。本身实现了Singleton模式和自带了监控线程,实现了自我管理。
2.2.3 字节处理模块
为解析协议提供简便的方法处理字节数组。
2.3 主要接口
为了实现通信平台的业务无关性,本平台设计了一些接口提供给业务开发实现。
2.3.1 协议解析接口
为所有解析协议提供统一协议解析类接口。主要是为了统一协议解析的方式。
2.3.2 业务接口
业务接口主要有两种:业务逻辑接口和业务实现接口。
2.3.2.1 业务逻辑接口
主要为了处理每一个指令的业务流程,例如先读取,再处理业务,再返回结果;或者先发送指令,再等待返回结果。
2.3.2.2 业务实现接口
主要处理每个协议中每一个指令所对应的业务网处理。
2.3.3 注册器接口
专门为客户端登录服务器时提供的统一的注册方式。
3. 平台设计
3.1 服务端的设计
3.1.1 模块设计图
3.1.2 功能
l 通讯服务
l 并发处理客户端请求
l 自监控
l&nb
相关文档:
第一章:java对象持久化技术概述
1:持久化:persistence;对象持久化包含两方面的内容:将内存数据存入长期记忆介质并能从这些介质上无差错地复原到内存。
2:通过实现java.io包中的Serializable接口(即对象序列化和饭序列化技术)实现,这种技术很重要,虽然在执行持久化时有极大的限制,如:效率低下、不支持事务等 ......
1、 对象的初始化
(1) 非静态对象的初始化
在创建对象时,对象所在类的所有数据成员会首先进行初始化。
基本类型:int型,初始化为0。
如果为对象:这些对象会按顺序初始化。
※在所有类成员初始化完成之后,才调用本类的构造方法创建对象。
构造方法的作用就是初始化。
(2) 静态对象的初始化
程序中主类的 ......
首先,AMF3似乎并不支持List.ArrayList等数组的解析...Java客户端传递List对象,AMF3无法解析为Array...
原因是:AMF3只支持基础数据类型...
故,需要将List等数据转换为Object[] !这样AMF3才能将Java传递的数组解析为Array...
由于数组的创建,即便一开始不赋值,也需要设置数组的length,如:String[] myString = new Str ......
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpMethod;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.URIException;
import org.apache.commons.httpclient.methods.GetMethod;
import org.apache.commons.httpclient.meth ......
package reflect;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class Test {
public static void main(String[] args) {
try {
Class c = Class.forName("reflect.Student");// 根据类的完整类名创建类象
  ......