资源简介
简单但是内容不浅的netty传输文件的例子,实现客户端和服务器端。全面,5积分绝对值得。本人通过很久测试才完成该简单通俗易懂的例子。
netty版本:4.0.23

代码片段和文件信息
/*
* Copyright 2012 The Netty Project
*
* The Netty Project licenses this file to you under the Apache License
* version 2.0 (the “License“); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing software
* distributed under the License is distributed on an “AS IS“ BASIS WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*/
package org.angel_lee.io.client;
import io.netty.bootstrap.Bootstrap;
import io.netty.channel.ChannelFuture;
import io.netty.channel.ChannelInitializer;
import io.netty.channel.ChannelOption;
import io.netty.channel.ChannelPipeline;
import io.netty.channel.EventLoopGroup;
import io.netty.channel.nio.NioEventLoopGroup;
import io.netty.channel.socket.SocketChannel;
import io.netty.channel.socket.nio.NioSocketChannel;
import io.netty.handler.codec.bytes.ByteArrayEncoder;
import io.netty.handler.ssl.SslContext;
import io.netty.handler.ssl.util.InsecureTrustManagerFactory;
import io.netty.handler.stream.ChunkedWriteHandler;
/**
* Sends one message when a connection is open and echoes back any received
* data to the server. Simply put the echo client initiates the ping-pong
* traffic between the echo client and server by sending the first message to
* the server.
*/
public final class EchoClient {
static final boolean SSL = System.getProperty(“ssl“) != null;
static final String HOST = System.getProperty(“host“ “127.0.0.1“);
static final int PORT = Integer.parseInt(System.getProperty(“port“ “8007“));
static final int SIZE = Integer.parseInt(System.getProperty(“size“ “256“));
public static void main(String[] args) throws Exception {
// Configure SSL.git
final SslContext sslCtx;
if (SSL) {
sslCtx = SslContext.newClientContext(InsecureTrustManagerFactory.INSTANCE);
} else {
sslCtx = null;
}
// Configure the client.
EventLoopGroup group = new NioEventLoopGroup();
try {
Bootstrap b = new Bootstrap();
b.group(group)
.channel(NioSocketChannel.class)
.option(ChannelOption.TCP_NODELAY true)
.handler(new ChannelInitializer() {
@Override
public void initChannel(SocketChannel ch) throws Exception {
ChannelPipeline p = ch.pipeline();
if (sslCtx != null) {
p.addLast(sslCtx.newHandler(ch.alloc() HOST PORT));
}
p.addLast(
new ByteArrayEncoder()
new ChunkedWriteHandler()
new EchoClientHandler());
}
});
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3311 2014-10-27 17:30 netty\src\org\angel_lee\io\client\EchoClient.java
文件 2261 2014-10-29 10:13 netty\src\org\angel_lee\io\client\EchoClientHandler.java
文件 2117 2014-10-29 10:07 netty\src\org\angel_lee\io\server\EchoServer.java
文件 2785 2014-10-29 10:22 netty\src\org\angel_lee\io\server\EchoServerHandler.java
相关资源
- 基于FPGA的sdi视频传输工程(k7_sdi_rx
- PC -- 单片机的串口数据传输系统设计
- Openssl给文件传输加密
- tftp文件传输工具
- 基于swing的简单聊天器(兼传输文件)
- 基于ARM蓝牙传输源程序
- 上传大文件并显示进度条控件实例
- 对大文件的读写的两个类C#
- socket文件传输源码
- 通用数据传输平台GTP
- TCP_UDP对结构体加密数据传输
- ts格式视频
- 全息术的异常传输:第二部分
- ASON技术在本地传输网络中的应用探讨
- 烽火通信ASON系统在大同网通本地传输
- 基于STM32的深海钻机甲板控制系统
- 网吧怎样布线能提高网络传输速度
- 精通并发与Netty 涉及到的代码
- netty-高并发编程-视频教程张龙-90讲完
- netty的视频90集
- 浓缩机加装无线传输在线监控系统的
- 基于ADS1298与WiFi的脑电信号采集与传输
- TLM法在有损媒质场强分布中的应用
- 在QT中使用RTP进行视频的采集和传输
- 不规则分层地层中电磁波透地传输的
- 单片机 采集AD 并用串口传输 显示波形
- 基于STM32F407的视频采集与传输系统设
- 大气激光传输
- 安卓基于netty4.x心跳,断线重连,状态
- H264实时编码RTSP直播
评论
共有 条评论