夢幻之旅
DEBUG - 天道酬勤
::
首頁
::
新隨筆
::
聯系
::
聚合
::
管理
::
671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks
<
2011年8月
>
日
一
二
三
四
五
六
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
公告
本博客中未注原創的文章均為轉載,對轉載內容可能做了些修改和增加圖片注釋,如果侵犯了您的版權,或沒有注明原作者,請諒解
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(21)
給我留言
查看公開留言
查看私人留言
隨筆分類
(644)
Android(10)
(rss)
ANT(4)
(rss)
C#(10)
(rss)
C/C++(16)
(rss)
CSS(3)
(rss)
DataBase(119)
(rss)
DB-DailyMmaintenance(16)
(rss)
Design Patterns(27)
(rss)
english
(rss)
Exceptions(7)
(rss)
EXT(39)
(rss)
FLASH(9)
(rss)
Hardware(20)
(rss)
Hibernate(13)
(rss)
Html(23)
(rss)
Java(143)
(rss)
java Net(10)
(rss)
JavaScript(39)
(rss)
Linux(26)
(rss)
php(5)
(rss)
Regular Exp(3)
(rss)
Spring(17)
(rss)
Struts(12)
(rss)
TOOL(43)
(rss)
VB/VBA/VBS(5)
(rss)
webservice(9)
(rss)
XML(2)
(rss)
我的夢幻旅途(14)
(rss)
隨筆檔案
(669)
2017年9月 (4)
2016年10月 (1)
2015年6月 (1)
2015年4月 (2)
2015年1月 (1)
2014年8月 (2)
2014年7月 (9)
2014年6月 (1)
2014年5月 (2)
2014年4月 (3)
2014年3月 (3)
2013年10月 (4)
2013年9月 (8)
2013年8月 (4)
2013年6月 (3)
2013年5月 (4)
2013年4月 (7)
2013年3月 (1)
2013年1月 (3)
2012年12月 (4)
2012年11月 (1)
2012年10月 (1)
2012年9月 (4)
2012年8月 (1)
2012年7月 (2)
2012年6月 (1)
2012年5月 (4)
2012年4月 (2)
2012年3月 (1)
2012年2月 (4)
2012年1月 (6)
2011年12月 (10)
2011年11月 (7)
2011年10月 (6)
2011年9月 (37)
2011年8月 (34)
2011年7月 (44)
2011年6月 (10)
2011年5月 (5)
2011年4月 (3)
2011年3月 (1)
2011年2月 (1)
2011年1月 (18)
2010年12月 (9)
2010年11月 (13)
2010年10月 (17)
2010年9月 (2)
2010年8月 (10)
2010年7月 (10)
2010年6月 (5)
2010年5月 (8)
2010年4月 (9)
2010年3月 (11)
2010年2月 (3)
2010年1月 (8)
2009年12月 (6)
2009年11月 (10)
2009年10月 (5)
2009年9月 (1)
2009年8月 (18)
2009年7月 (6)
2009年6月 (2)
2009年5月 (1)
2009年4月 (4)
2009年3月 (6)
2009年2月 (5)
2009年1月 (3)
2008年12月 (13)
2008年11月 (13)
2008年10月 (30)
2008年9月 (9)
2008年8月 (24)
2008年7月 (17)
2008年6月 (15)
2008年5月 (16)
2008年4月 (15)
2008年3月 (19)
2008年2月 (3)
2008年1月 (20)
2007年12月 (24)
2007年11月 (9)
文章檔案
(6)
2008年4月 (1)
2008年3月 (1)
2008年1月 (2)
2007年11月 (2)
最新隨筆
1.?PP代碼生成器(四) 使用解決方案生成代碼
2.? PP代碼生成器(三) 設計freemarker模板, 創建解決方案
3.? PP代碼生成器(二) 解決方案, 生成任務, 輔助設計面板
4.? PP代碼生成器(一) 簡介, 下載, 運行
5.?PP持久層代碼生成器
6.?比較好的博客
7.?系統集成項目管理工程師
8.?軟件公司項目經理崗位職責
9.?聯想筆記本 顯示屏 鍵盤失靈 釋放靜電
10.?eclipse maven
積分與排名
積分 - 960866
排名 - 37
最新評論
1.?re: Myeclipse 快捷鍵大全(絕對全)
crl+向右箭頭(輸入法有問題打不出來)移到下一個參數的位置,然后crl+shift+向右箭頭 選中該位置的參數即可
--紅領巾
2.?re: Log4j基本使用方法
555
--555
3.?re: Myeclipse 快捷鍵大全(絕對全)[未登錄]
很不錯,謝謝
--銀狐
4.?re: Flex 表單
是誰這么無聊~嗚~~~
--HUIKK
5.?re: Spring AfterReturning 異常
具體是什么意思啊
--dingli
閱讀排行榜
1.?Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream(70034)
2.?log4j.properties 使用說明(42086)
3.?Myeclipse 快捷鍵大全(絕對全)(32737)
4.?TNSNAMES.ORA 配置(24399)
5.?oracle 樹狀查詢(21367)
評論排行榜
1.?Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream(53)
2.?JMail 異常: java.lang.NoClassDefFoundError: javax/activation/DataSource(21)
3.?javax.mail.MessagingException: 530 5.7.0 Must issue a STARTTLS command first(14)
4.?java 讀取 excel 2003 或 excel 2007(14)
5.?java.lang.UnsupportedClassVersionError: Bad version number in .class file(8)
apache mina框架小試
1.server
package
server;
import
java.net.InetSocketAddress;
import
org.apache.mina.core.filterchain.DefaultIoFilterChainBuilder;
import
org.apache.mina.core.session.IdleStatus;
import
org.apache.mina.filter.codec.ProtocolCodecFilter;
import
org.apache.mina.filter.codec.serialization.ObjectSerializationCodecFactory;
import
org.apache.mina.transport.socket.SocketAcceptor;
import
org.apache.mina.transport.socket.nio.NioSocketAcceptor;
public
class
MainServer
{
private
static
MainServer mainServer
=
new
MainServer();
private
SocketAcceptor acceptor;
private
int
bindPort
=
8888
;
public
static
MainServer getInstances()
{
return
mainServer;
}
private
MainServer()
{
this
.init();
}
private
void
init()
{
try
{
acceptor
=
new
NioSocketAcceptor();
acceptor.getSessionConfig().setReadBufferSize(
2048
*
3
);
acceptor.getSessionConfig().setIdleTime(IdleStatus.BOTH_IDLE,
10
);
DefaultIoFilterChainBuilder chain
=
acceptor.getFilterChain();
chain.addLast(
"
myChain
"
,
new
ProtocolCodecFilter(
new
ObjectSerializationCodecFactory()));
acceptor.setHandler(ServerHandler.getInstances());
acceptor.bind(
new
InetSocketAddress(bindPort));
}
catch
(Exception ex)
{
ex.printStackTrace();
}
}
public
void
shutDown()
{
acceptor.dispose();
}
public
static
void
main(String[] args)
throws
Exception
{
MainServer.getInstances();
}
}
2.handler
package
server;
import
org.apache.mina.core.filterchain.IoFilterAdapter;
import
org.apache.mina.core.service.IoHandler;
import
org.apache.mina.core.session.IdleStatus;
import
org.apache.mina.core.session.IoSession;
import
org.apache.mina.transport.socket.SocketSessionConfig;
public
class
ServerHandler
extends
IoFilterAdapter
implements
IoHandler
{
private
static
ServerHandler samplMinaServerHandler
=
new
ServerHandler();
public
static
ServerHandler getInstances()
{
return
samplMinaServerHandler;
}
private
ServerHandler()
{}
public
void
sessionOpened(IoSession session)
throws
Exception
{
System.out.println(
"
連接找開
"
);
}
public
void
sessionClosed(IoSession session)
{
session.close(
true
);
System.out.println(
"
關閉
"
);
}
public
void
messageReceived(IoSession session, Object message)
throws
Exception
{
String msg
=
(String) message;
System.out.println(
"
收到的信息長度
"
+
msg.length());
session.write(
"
echo
"
);
}
public
void
exceptionCaught(IoSession session, Throwable arg1)
throws
Exception
{
session.close(
true
);
}
public
void
messageSent(IoSession arg0, Object arg1)
throws
Exception
{
//
System.out.println(arg1);
}
public
void
sessionCreated(IoSession session)
throws
Exception
{
SocketSessionConfig cfg
=
(SocketSessionConfig) session.getConfig();
cfg.setReceiveBufferSize(
2
*
1024
*
1024
);
cfg.setReadBufferSize(
2
*
1024
*
1024
);
cfg.setKeepAlive(
true
);
cfg.setSoLinger(
0
);
}
public
void
sessionIdle(IoSession arg0, IdleStatus arg1)
throws
Exception
{}
}
3.client
package
client;
import
java.net.InetSocketAddress;
import
org.apache.mina.core.filterchain.DefaultIoFilterChainBuilder;
import
org.apache.mina.core.future.ConnectFuture;
import
org.apache.mina.filter.codec.ProtocolCodecFilter;
import
org.apache.mina.filter.codec.serialization.ObjectSerializationCodecFactory;
import
org.apache.mina.transport.socket.nio.NioSocketConnector;
public
class
MsgSender
{
private
static
MsgSender msgSender
=
new
MsgSender();
NioSocketConnector connector;
DefaultIoFilterChainBuilder chain;
public
static
MsgSender getInstances()
{
return
msgSender;
}
private
MsgSender()
{
connector
=
new
NioSocketConnector();
chain
=
connector.getFilterChain();
chain.addLast(
"
myChain
"
,
new
ProtocolCodecFilter(
new
ObjectSerializationCodecFactory()));
connector.setHandler(ClientHandler.getInstances());
connector.setConnectTimeoutMillis(
1000
);
}
public
void
sendMsg(String host,
int
port, String msg)
{
//
chain.addLast("codec", new ProtocolCodecFilter( new TextLineCodecFactory()));
ConnectFuture cf
=
connector.connect(
new
InetSocketAddress(host, port));
cf.awaitUninterruptibly();
try
{
cf.getSession().write(msg);
}
catch
(Exception ex)
{
ex.printStackTrace();
}
cf.getSession().getCloseFuture().awaitUninterruptibly();
}
public
void
shutDown()
{
connector.dispose();
}
public
static
void
main(String args[])
{
StringBuffer s
=
new
StringBuffer();
for
(
int
i
=
0
;i
<
100
;i
++
)
{
s.append(i);
}
for
(
int
i
=
0
;i
<
200
;i
++
)
{
MsgSender.getInstances().sendMsg(
"
127.0.0.1
"
,
8888
, s.toString());
}
}
}
4.handler
package
client;
import
org.apache.mina.core.service.IoHandlerAdapter;
import
org.apache.mina.core.session.IoSession;
public
class
ClientHandler
extends
IoHandlerAdapter
{
private
static
ClientHandler samplMinaClientHandler
=
new
ClientHandler();
public
static
ClientHandler getInstances()
{
return
samplMinaClientHandler;
}
private
ClientHandler()
{
}
public
void
sessionOpened(IoSession session)
throws
Exception
{
}
public
void
sessionClosed(IoSession session)
{}
public
void
messageReceived(IoSession session, Object message)
throws
Exception
{
System.out.println(
"
收到到消息
"
+
(String) message);
session.close(
true
);
}
public
void
messageSent(IoSession arg0, Object arg1)
throws
Exception
{
//
System.out.println(arg1);
}
public
void
exceptionCaught(IoSession session, Throwable cause)
throws
Exception
{
session.close(
true
);
}
}
posted on 2011-08-30 13:11
HUIKK
閱讀(1254)
評論(0)
編輯
收藏
所屬分類:
Java
、
java Net
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
PP代碼生成器(四) 使用解決方案生成代碼
PP代碼生成器(三) 設計freemarker模板, 創建解決方案
PP代碼生成器(二) 解決方案, 生成任務, 輔助設計面板
PP代碼生成器(一) 簡介, 下載, 運行
PP持久層代碼生成器
eclipse maven
平衡二叉樹,java實現
數據結構復習
萬能分頁標簽
優化Servlet配置為web.xml瘦身
Powered by:
BlogJava
Copyright © HUIKK
主站蜘蛛池模板:
金塔县
|
辉南县
|
双牌县
|
岳西县
|
宜城市
|
太谷县
|
绥德县
|
灵石县
|
双牌县
|
凉城县
|
揭东县
|
隆德县
|
葫芦岛市
|
华坪县
|
台中市
|
射阳县
|
巩义市
|
祁阳县
|
光山县
|
丹巴县
|
晋江市
|
密云县
|
新竹县
|
双桥区
|
葫芦岛市
|
鹿泉市
|
简阳市
|
建德市
|
富源县
|
静海县
|
宣恩县
|
蛟河市
|
中牟县
|
镇宁
|
佛冈县
|
杂多县
|
天镇县
|
永顺县
|
林周县
|
尼玛县
|
基隆市
|