`
yeshaoting
  • 浏览: 685957 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[转载]mina发送数据

    博客分类:
  • J2SE
 
阅读更多

http://www.iteye.com/problems/46667

Mina发送数据参考代码:

 

package com.nari.mina.client;

import java.io.IOException;
import java.net.InetSocketAddress;

import org.apache.mina.core.future.ConnectFuture;
import org.apache.mina.core.future.IoFutureListener;
import org.apache.mina.core.service.IoConnector;
import org.apache.mina.core.session.IdleStatus;
import org.apache.mina.core.session.IoSession;
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.NioSocketConnector;

import com.nari.mina.server.MyProtocalPack;

public class myChatClient2 {
    
    private static final String HOST = "localhost";     
    private static final int PORT = 2500;     
    static long counter = 0;     
    final static int FC1 = 100;     
    static long start = 0;     
    /**   
     * 使用Mina的框架结构进行测试   
     *    
     * @param args   
     */    
    public static void main(String[] args) throws IOException {     
        start = System.currentTimeMillis();     
        IoConnector connector = new NioSocketConnector();   
        LoggingFilter lf = new LoggingFilter();     
    
        connector.getFilterChain().addLast("logger", lf);     
        connector.getFilterChain().addLast("codec", new ProtocolCodecFilter(new TextLineCodecFactory()));  
       connector.setHandler(new ChatClientHandler2());  
        connector.getSessionConfig().setUseReadOperation(true);
        connector.getSessionConfig().setReadBufferSize(100);     
        connector.getSessionConfig().setIdleTime(IdleStatus.BOTH_IDLE, 10);      
        ConnectFuture connFuture = connector.connect(new InetSocketAddress(HOST, PORT));     
        connFuture.addListener(new IoFutureListener<ConnectFuture>() {     
            public void operationComplete(ConnectFuture future) {     
                try {     
                    if (future.isConnected()) {     
                        IoSession session = future.getSession();   
                       
                        sendData(session);       
                    } else {     
                        System.out.println("连接不存在 ");     
                    }     
                } catch (Exception e) {     
                    e.printStackTrace();     
                }     
            }     
        });     
        System.out.println("start client ...");    
          
    }     
    public static void sendData(IoSession session) throws IOException {     
        for (int i = 0; i < 100; i++) {     
            String content = "afdjkdafk张新波测试" + i;     
            MyProtocalPack pack = new MyProtocalPack((byte) i, content);     
            session.write(content);     
            System.out.println("send data:" + content);     
        }     
    }     

}
 

 

分享到:
评论

相关推荐

    mina的高级使用,mina文件图片传送,mina发送文件,mina报文处理,mina发送xml和json

    3. **Mina发送文件** 发送文件的过程与图片类似,但可能需要考虑更多因素,如文件大小、文件类型等。Mina允许开发者自定义编码解码策略,因此可以根据需要选择合适的文件分块策略进行大文件传输。此外,为了保证...

    给予mina 协议进行大数据传输

    3. **异步通信**:MINA的异步通信模式意味着发送请求后无需等待响应,而是继续处理其他任务,当响应到来时,MINA会通过回调函数通知应用程序。 4. **多协议支持**:MINA不绑定于特定的网络协议,开发者可以轻松创建...

    mina传输对象的示例

    5. **事件处理**: Mina使用事件驱动模型,当数据到达或发送时,会触发相应的事件,如`MessageReceivedEvent`和`MessageSentEvent`。你可以通过实现`IoHandler`接口来处理这些事件。 示例中的"imagine"可能是项目或...

    Mina消息发送简单实现

    基于Mina的网络通讯,分为服务端和客户端。 研究selector NIO实现时,发现了这个架构。 Mina的底层实现实际就是selector和SocketChannel。所以如果对Mina源码感兴趣的可以先去看下selector相关的例子。

    Android Mina UDP数据交互

    本文将深入探讨如何使用Mina库在Android客户端与Java服务器之间实现UDP(用户数据报协议)的数据交互。 UDP是一种无连接的、不可靠的传输层协议,相比TCP,它具有更低的延迟和更高的数据传输效率。然而,由于其不...

    socket 与 mina 交互数据

    同时,客户端也可以使用Mina创建一个Socket连接,发送数据到服务器,并通过接收过滤器解析服务器返回的信息。 总结起来,Socket和Mina都是Java网络编程的重要工具,Socket更适合简单的、低级别的网络通信,而Mina则...

    mina 上传文件和文件名

    MINA的I/O调度器会负责将这些数据打包成网络协议的数据包,如HTTP或自定义协议,然后通过网络发送出去。 文件名的处理是上传过程中不可忽视的一部分。在MINA中,你可以选择在请求头中携带文件名信息,或者将其作为...

    mina 服务器socket客服端发消息

    在Java开发中,Mina(Java Minimal Asynchronous Network Engine)是一个高性能、易用的网络通信框架,常用于构建网络服务,如TCP/IP和UDP服务。本文将深入探讨如何使用Mina来实现一个服务器以及对应的Socket客户端...

    Mina server client实例

    Mina Client则是客户端部分,用于连接到Mina Server并发送请求。客户端同样基于NIO,可以实现非阻塞的I/O操作,这意味着即使在等待服务器响应时,客户端也可以执行其他任务,从而提高整体性能。在设置Mina Client时...

    mina客户端简单代码示例

    标题中的"mina客户端简单代码示例"意味着我们将探讨如何使用Mina框架编写一个基础的客户端程序,该程序能够连接到服务器并发送数据。描述指出,运行这个客户端程序(minaTestClient)会展示一个窗口,用户可以通过...

    Mina+Socket通信

    文件"MinaSocket"可能包含了实现上述功能的详细代码,包括服务端的Acceptor配置、过滤器设置、事件处理器编写,以及客户端的Socket连接、数据发送和接收等。通过阅读和理解这些代码,你可以更好地掌握Mina与Socket...

    spring boot 整合mina 串口

    最后,启动Spring Boot应用,Mina将会监听配置的串口,等待接收和发送数据。为了测试,你可以使用串口调试工具(如RealTerm、CoolTerm等)连接到同一串口,发送和接收数据。 以上就是Spring Boot整合Mina实现串口...

    MiNA框架新人指导

    客户端应用程序主要用于向服务端发送请求。同样地,在MiNA框架中,客户端的实现也很简单: - **创建IoConnector对象**:这是MiNA框架中的另一个核心组件,用于发起连接请求。 - **配置过滤器链**:定义一系列过滤器...

    spring+mina实现http接口服务端通信客户端

    5. **消息处理**:在IoHandler中,你可以解析接收到的HTTP请求消息,将其转化为Mina能处理的数据格式,然后通过Mina的I/O模型发送回服务端。同样,服务端的响应也需要转换成HTTP响应返回给客户端。 6. **测试与优化...

    利用Mina进行TCP通信

    // 设置处理器,处理发送和接收的数据 connector.setHandler(new MyClientHandler()); // 连接到服务器 ConnectFuture future = connector.connect(new InetSocketAddress("localhost", 8080)); future....

    apache-mina-2.0.4.rar_apache mina_mina

    4. **ProtocolCodec**:为了处理不同协议的数据编码和解码,Mina提供了ProtocolCodec接口。你可以自定义实现,以适应你的特定协议需求。 5. **Executor**:Mina使用Executor服务来管理和调度任务,确保异步操作的...

    mina串口通讯

    双向控制锁确保了在一次通信操作中,只有一个设备可以发送数据,避免了数据碰撞和混乱。 调试过程中,可能会遇到如串口权限问题、数据格式错误、通信超时等常见问题。解决这些问题通常需要检查代码逻辑、配置参数...

    MINA:开始接受数据

    NULL 博文链接:https://summerbell.iteye.com/blog/359201

    mina连接 mina心跳连接 mina断线重连

    Mina允许开发者自定义心跳包,通过发送无数据的包或者包含特定标识的数据包,来检查网络连接是否正常。心跳通常由客户端或服务端定期发起,如果在预定时间内未收到回应,则判断为连接异常,并可能触发断线重连流程。...

    mina demo mina jar包

    描述中的"实现客户端输入数据的返回"意味着,当客户端发送数据到服务端时,服务端的Handler会接收到这些数据,进行解析或者处理,然后将处理后的结果返回给客户端。这种交互模式在很多网络应用中非常常见,例如FTP、...

Global site tag (gtag.js) - Google Analytics