ic final int DATA_SIZE = 1024;
92
93 /** *//**
94 * 发送缓冲区大小
95 */
96 public static final int BUFFER_SIZE = DATA_SIZE + 1 + 4; // [0]位是标志位,区分数据和命令 + 4位长度
97
98 /** *//**
99 * 数据段标识
100 */
101 public static final int MARK_DATA_SECT = 0;
102 /** *//**
103 * 命令段标识
104 */
105 public static final int CMD_DATA_SECT = 1;
106
107 /** *//**
108 * 数据段结束标识
109 */
110 public static final int MARK_DATA_END = 127;
111}
112
CS结构软件自动升级实现(二)(2)
时间:2011-06-29 blogjava rochoc
AutoUpdateServer.java :
1/** *//********************************************************************
2 * 项目名称 :rochoc<p>
3 * 包名称 :com.rochoc.autoupdate<p>
4 * 文件名称 :AutoUpdateServer.java<p>
5 * 编写者 :kfzx-luoc<p>
6 * 编写日期 :2008-12-22<p>
7 * 程序功能(类)描述 :<p>
8 * 自动更新服务端
9 * 程序变更日期 :
10 * 变更作者 :
11 * 变更说明 :
12********************************************************************/
13package com.rochoc.autoupdate;
14
15import java.io.IOException;
16import java.net.ServerSocket;
17import java.net.Socket;
18
19/** *//**
20 * @author kfzx-luoc
21 *
22 * TODO To change the template for this generated type comment go to
23 * Window - Preferences - Java - Code Style - Code Templates
24 */
25public class AutoUpdateServer extends Thread
26{
27 private int port = 0;//服务端口号
28 private Config config = Config.getInstance();//配置文件对像
29 private ServerSocket srvSocket = null;
30 public AutoUpdateServer()
31 {
32 port = Integer.parseInt(config.getServerPort());
33 try
34 {
35 srvSocket = new ServerSocket(port);
36 //setTimeout(60000);
37 this.start();
38 Config.print("自动更新服务器在端口''"+port+"''监听");
39 } catch (IOException e)
40 {
41 e.printStackTrace();
42 }
43 }
44 void setTimeout(int millis) throws IOException
45 {
46 if (srvSocket != null)
47 {
48 srvSocket.setSoTimeout(millis);
49 }
50 }
51 void close() throws IOException
52 {
53 if (srvSocket != null)
54 {
55 srvSocket.close();
56 }
57 }
58 /** *//**
59 * @author kfzx-luoc
60 *
61 * 执行监听处理,如果有客户端连接上来,则判断是否需要更新,
62 * 如果需要更新,则给客户端传送最新版本文件
63 */
64 public void run()
65 {
66 try
67 {
68 while (true)
69 {
70 Socket clSocket = null;
71 try
72 {
73 clSocket = srvSocket.accept();
74 Config.print("客户端‘"+clSocket.getInetAddress()+"’连接成功");
75
|