所有jar包
jar包:链接:http://pan.baidu.com/s/1o8r0eYu 密码:thb0
服务端程序:
import java.io.IOException; import java.net.InetSocketAddress; import java.io.IOException; import java.net.InetSocketAddress; import java.nio.charset.Charset; import org.apache.mina.core.service.IoAcceptor; import org.apache.mina.core.session.IdleStatus; import org.apache.mina.filter.codec.ProtocolCodecFilter; import org.apache.mina.filter.codec.textline.TextLineCodecFactory; import org.apache.mina.filter.logging.LoggingFilter; import org.apache.mina.transport.socket.nio.NioSocketAcceptor; public class MinaTimeServer { private static final int PORT= 9123; public static void main(String[] args) { //socket接收器 IoAcceptor acceptor = new NioSocketAcceptor(); //添加日志记录 acceptor.getFilterChain().addLast("logger",new LoggingFilter()); //添加编码解码器 acceptor.getFilterChain().addLast("codec",new ProtocolCodecFilter(new TextLineCodecFactory(Charset.forName("UTF-8")))); //添加处理器(用于接收数据后处理处理数据逻辑) acceptor.setHandler( new TimeServerHandler() ); //设置读取数据缓存单位byte acceptor.getSessionConfig().setReadBufferSize(2048 ); //设置多长时间后接收器开始空闲 acceptor.getSessionConfig().setIdleTime(IdleStatus.BOTH_IDLE, 10 ); try { //绑定某个端口,作为数据入口 acceptor.bind(new InetSocketAddress(PORT) ); }catch (IOException e) { e.printStackTrace(); } } }
cmd 启动当客户端 访问端口号
telnet不是内部或外部命令 解决办法:http://jingyan.baidu.com/article/6525d4b1377913ac7d2e94eb.html
接下来,我们把server类,run起来,我们模拟下tcp调用,打开cmd命令行:C:Usersxiao>telnet 127.0.0.1 9123
连接服务器,输入hello...
https://m.baidu.com/from=844b/bd_page_type=1/ssid=0/uid=0/pu=sz%401320_2001%2Cta%40iphone_1_10.0_3_602%2Cusm%403/baiduid=32776D67809A9D4476A725398D472264/w=10_10_/t=iphone/l=3/tc?ref=www_iphone&lid=12124893284401684886&order=3&fm=alop&tj=www_normal_3_10_10_title&vit=osres&m=8&srd=1&cltj=cloud_title&asres=1&nt=wnor&title=ApacheMina(%E4%B8%80)-Kyle_Java-%E5%8D%9A%E5%AE%A2%E5%9B%AD&dict=30&w_qd=IlPT2AEptyoA_yisJU7g&sec=21194&di=7d79c84b70d5bdda&bdenc=1&tch=124.133.316.542.1.503&nsrc=IlPT2AEptyoA_yixCFOxXnANedT62v3IEQGG_ytK1DK6mlrte4viZQRASiLqK7_NZpPPxXCBeMZHdWGdWWQm7B2OrxposH9hbX8fgPq3gRy_GBwPeRsw4tv3&eqid=a8444633a44820001000000259224a6b&wd=&clk_info=%7B%22srcid%22%3A%221599%22%2C%22tplname%22%3A%22www_normal%22%2C%22t%22%3A1495419503664%2C%22sig%22%3A%224546%22%2C%22xpath%22%3A%22div-a-h3%22%7D&sfOpen=1
官方文档: