谁有java socket 的学习视频啊 给小弟一个 谢谢了
发布网友
发布时间:2024-10-05 07:41
我来回答
共3个回答
热心网友
时间:2024-11-18 23:45
"给大家讲讲我的学习经历吧,开始的两年我学JAVA就是拿书看,练习书上的例子,但是一直没有好的效果。后来因为项目需要开始正式使用JAVA开发,我发现以前练习的东西都忘光了,所以不得不在拿起书看。也就是基本上做了无用功了。现在想来因为大部分是抄来的,不怎么动脑子,所以不清楚为什么要这样。所以我强烈建议你学习的时候给自己设定一个假想的项目目标,做一个东西出来,网页也好,application也好,这样你才会快速地学习。对java有了一定地感觉以后,你在去看他的DOCUMENT,看他的源码,我建议你从低版本的JAVA源码看起,因为他类少,看起来容易懂。然后你就会知道自己以前编码的东西那些是很幼稚的,是可以用一两句就能搞定的。如果你已经稍微有了些感觉,如果觉得合适也可以考虑参加一些培训,毕竟比自学要轻松些,另外还可以学到别人的一些经验,比如:“动力节点”或“王勇Java”一些学员反应不错的,也建议你们多了解一下其它的培训机构。Y.
"
热心网友
时间:2024-11-18 23:46
java socket是我用过的包括C++,C#,VB中最好写的一个。。。
只需要几行代码就能实现
可以去参考
http://lilibo2121130.blog.163.com/blog/static/115165270200961743038324/
这个写的就比较全了。
话说随便搜一下就能找到模板
热心网友
时间:2024-11-18 23:46
package testserver1;
import java.io.IOException;
import java.net.InetSocketAddress;
import java.nio.ByteBuffer;
import java.nio.channels.SelectionKey;
import java.nio.channels.Selector;
import java.nio.channels.ServerSocketChannel;
import java.util.Iterator;
import com.telesound.comunict..impl.ComunictConst;
import com.telesound.comunict..impl.DataAnalysis;
public class ChannelServer {
private static final int BUFFSIZE=1024;
private static final int TIMEOUT= 3500;
private static final int PORT = 5678;
public static void main(String[] args) throws IOException {
Selector selector = Selector.open();//创建选择器
//打开监听信道
ServerSocketChannel serverChannel = ServerSocketChannel.open();
//与端口绑定
serverChannel.socket().bind(new InetSocketAddress("192.168.11.80",PORT));
//设置非阻塞模式
serverChannel.configureBlocking(false);
//将选择器注册到监听信道,只有非阻塞信道才可以注册,并指出该信道可以Accept
serverChannel.register(selector, SelectionKey.OP_ACCEPT);
//创建处理协议类型
Protocol p = new ProtocolImpl(BUFFSIZE);
while(true){
//等待某信道就绪(或超时)
if(selector.select(TIMEOUT)==0){
System.out.println("独自等待");
continue;
}
//取得迭代器selectedKey()中包含了每个准备好某一操作信道的selectionKey
Iterator it = selector.selectedKeys().iterator();
while(it.hasNext()){
SelectionKey key = (SelectionKey) it.next();
try{
if(key.isAcceptable()){
//有客户端请求时
//接受请求并处理 处理该key
// p.handleAccept(key);
}
if(key.isReadable()){
//从客户端取数据
//p.handleRead(key);
}
if(key.isValid()&&key.isWritable()){
// //客户端可写时进行发送
// Thread.sleep(1000);
// byte[] bytes = {3,4,5,6};
// p.handlWrite(key, ByteBuffer.wrap(bytes));
}
}catch(Exception e){
it.remove();
continue;
}
it.remove();
}
}
}
}
送你个服务端,自己研究下,Java.nio包中