夢幻之旅
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
積分與排名
積分 - 960751
排名 - 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 樹狀查詢(21366)
評論排行榜
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
閱讀(1253)
評論(0)
編輯
收藏
所屬分類:
Java
、
java Net
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
PP代碼生成器(四) 使用解決方案生成代碼
PP代碼生成器(三) 設計freemarker模板, 創建解決方案
PP代碼生成器(二) 解決方案, 生成任務, 輔助設計面板
PP代碼生成器(一) 簡介, 下載, 運行
PP持久層代碼生成器
eclipse maven
平衡二叉樹,java實現
數據結構復習
萬能分頁標簽
優化Servlet配置為web.xml瘦身
Powered by:
BlogJava
Copyright © HUIKK
主站蜘蛛池模板:
聂荣县
|
上饶市
|
峡江县
|
卢龙县
|
建德市
|
浙江省
|
常熟市
|
德江县
|
巴彦县
|
湘乡市
|
桓台县
|
南华县
|
四平市
|
瑞金市
|
犍为县
|
永寿县
|
墨江
|
库尔勒市
|
井陉县
|
将乐县
|
依兰县
|
大埔区
|
金川县
|
洛阳市
|
苏尼特右旗
|
弋阳县
|
博野县
|
乌兰县
|
涟源市
|
延吉市
|
图片
|
胶南市
|
赫章县
|
安平县
|
云阳县
|
湟源县
|
建湖县
|
桐城市
|
武穴市
|
麻城市
|
汨罗市
|