資源簡介
《Java實用系統(tǒng)開發(fā)指南》彭晨陽 編著
目錄摘要
第一章 高性能聊天系統(tǒng)
第二章 簡單的用戶注冊系統(tǒng)
第三章 Jive論壇系統(tǒng)
第四章 網(wǎng)站內(nèi)容管理系統(tǒng)
第五章 訂閱信息系統(tǒng)
第六章 用戶安全管理系統(tǒng)
第七章 EJB方法調(diào)用框架
第八章 網(wǎng)上商店系統(tǒng)
(http://www.jdon.com/mybook/details.htm)
---------
(1) chapter1,2...對應(yīng)每一章內(nèi)容,如文件夾中包含壓縮文件,請先解壓。
(2) 每一個chapter文件夾中所包含內(nèi)容的具體使用,請參見其中的readme文件。
代碼片段和文件信息
package?com.jdon.jserver.connector.tcp;
import?java.io.*;
import?java.net.*;
import?java.nio.*;
import?java.nio.channels.*;
import?java.util.*;
import?com.jdon.util.Debug;
/**
?*?TCP包接受核心功能類
?*?Copyright:?Jdon.com?Copyright?(c)?2003
?*?Company:?上海解道計算機技術(shù)有限公司
?*?@author?banq
?*?@version?1.0
?*/
public?class?TCPReactor?implements?Runnable?{
??private?final?static?String?module?=?TCPReactor.class.getName();
??private?final?Selector?selector;
??private?final?ServerSocketChannel?ssc;
??public?TCPReactor(int?port)?throws?IOException?{
????selector?=?Selector.open();
????ssc?=?ServerSocketChannel.open();
????InetSocketAddress?address?=
????????new?InetSocketAddress(InetAddress.getLocalHost()?port);
????ssc.socket().bind(address);
????Debug.logVerbose(“-->Start?host:“?+?InetAddress.getLocalHost()?+?“?port=“?+
?????????????????????port);
????ssc.configureBlocking(false);
????//向selector注冊該channel
????SelectionKey?sk?=?ssc.register(selector?SelectionKey.OP_ACCEPT);
????//利用sk的attache功能綁定Acceptor?如果有事情,觸發(fā)Acceptor
????sk.attach(new?Acceptor(selector?ssc));
????Debug.logVerbose(“-->TCP?Server?started“);
??}
??public?void?run()?{
????while?(true)?{
??????try?{
????????selector.select();
????????Set?selected?=?selector.selectedKeys();
????????Iterator?it?=?selected.iterator();
????????//Selector如果發(fā)現(xiàn)channel有OP_ACCEPT或READ事件發(fā)生,下列遍歷就會進行。
????????while?(it.hasNext())
??????????//來一個事件?第一次觸發(fā)一個accepter線程
??????????//以后觸發(fā)SocketReadHandler
??????????dispatch(?(SelectionKey)?(it.next()));
????????selected.clear();
??????}?catch?(IOException?ex)?{
????????Debug.logError(“reactor?error“?+?ex?module);
??????}
????}
??}
??//運行Acceptor或SocketReadHandler
??private?void?dispatch(SelectionKey?key)?{
????Runnable?r?=?(Runnable)?(key.attachment());
????if?(r?!=?null)?{
??????r.run();
????}
??}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1582??2003-10-09?17:39??chapter2\mysql.sql
?????文件?????????52??2004-03-19?13:58??chapter2\readme.txt
?????文件????2621654??2004-03-19?13:57??chapter2\SimpleRegister.rar
?????文件????5666037??2004-03-19?13:59??chapter3\jiveStudy.rar
?????文件????????154??2004-03-19?14:01??chapter3\readme.txt
?????文件??????84988??2004-03-19?14:03??chapter6\chapter6.rar
?????文件?????????44??2004-03-19?14:04??chapter6\readme.txt
?????文件?????????32??2004-03-19?14:05??chapter7\readme.txt
?????文件???????3603??2003-10-10?11:54??chapter7\7-9\HttpSessionProxy.java
?????文件??????????0??2003-10-10?11:10??chapter7\7-8\WebInvocationHandler.java
?????文件???????1054??2003-10-10?11:09??chapter7\7-7\ServiceServerFactory.java
?????文件???????3423??2003-10-10?10:54??chapter7\7-6\InvokerServlet.java
?????文件???????5587??2003-10-10?10:50??chapter7\7-5\HttpConnection
?????文件???????1240??2003-10-10?10:46??chapter7\7-4\RemoteInvocationHandler.java
?????文件???????2510??2003-10-10?10:44??chapter7\7-3\ServiceFactoryImp.java
?????文件???????1381??2003-10-10?10:38??chapter7\7-2\ServiceClientFactory.java
?????文件????????723??2003-10-10?10:36??chapter7\7-1\EJBDefinition.java
?????文件?????163956??2004-03-19?13:57??chapter8\chapter8.rar
?????文件????????139??2004-03-19?13:57??chapter8\readme.txt
?????文件???????1008??2003-10-09?17:21??chapter1\1-9\HttpWrapFactory.java
?????文件??????????0??2003-10-09?17:20??chapter1\1-9\WrapFactory.java
?????文件????????420??2003-10-09?17:14??chapter1\1-8\li
?????文件???????1104??2003-10-09?17:16??chapter1\1-8\ob
?????文件????????823??2003-10-09?17:17??chapter1\1-8\QueueAddWorker.java
?????文件????????907??2003-10-09?17:18??chapter1\1-8\QueueTakeWorker.java
?????文件????????383??2003-10-09?17:15??chapter1\1-8\QueueWorker.java
?????文件???????1137??2003-10-09?17:15??chapter1\1-8\StringType.java
?????文件???????1331??2003-10-09?17:06??chapter1\1-7\MessageList.java
?????文件???????1605??2003-10-09?17:08??chapter1\1-7\MessageQueue.java
?????文件???????4262??2003-10-09?17:03??chapter1\1-6\TCPClient.java
............此處省略56個文件信息
評論
共有 條評論