易截截图软件、单文件、免安装、纯绿色、仅160KB

JAVA NIO TCP SOCKET 聊天群发

以前都是用一般的socket编程,用线程来控制。最近突然用nio来做些东西。
nio的好处我来说一下:第一,读写都是基于块的,效率高。第二,通过引入selector,简化了网络编程模型,异步非阻塞。
既然有这么多好处,那就写个NIO TCP网络聊天室来练练手吧。
因为没有写gui,是基于控制台的所以没写私了的部分,只写了公共聊天室。(其实,既然是服务器端可以分发给所有人,分发给特定人也是很容易实现的。
注意:这里只是为了练手,联系服务器端分发消息到各个客户端。TCP 来写聊天室,在现实中是不可取的。IM都是基于UDP来写的。
先上代码吧。
服务器端代码 MySocketServer.java
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.kevin.nio;
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.nio.channels.SocketChannel;
import java.util.Date;
import java.util.Iterator;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
 *
 * @author kevin
 */
public class MySocketServer implements Runnable{
  
    private boolean running;
   
    private Selector selector;
    String writeMsg;
    StringBuffer sb=new StringBuffer();
    SelectionKey ssckey;
    public MySocketServer(){
       
        running=true;
       
    }
    public void init(){
        try {
            selector = Selector.open();
            ServerSocketChannel ssc = ServerSocketChannel.open();
         &nbs


相关文档:

java中如何使用amcharts


最近公司碰到需要用图表的形式显示一些数据,我就开始到网上查询,查到了jfreechart和amcharts,这两者我都实现过了,jfreechart最后生成图片,但是图片效果不是我想要的,然后又研究amcharts 它的效果确实很好,而且官方网站上还有好些例子可供下载,网址是:www.amcharts.com
(想要完成一个amcharts图形需要swfobjects. ......

传智播客java培训 java基础之JDBC

昨天睡得太晚,严重影响了今天的学习,实在是得不偿失!
关于java的基础知识还有二十天就要结束了,现在我们已经开始做一些小的练习,发现自己的思路有时候跟不上,
真上火!
学而实习之,不能丢了西瓜捡芝麻,上课要紧跟老师节奏,不能自己做自己的,老师讲老师的!
调整心态,用好的学习方法方能事半功倍;
JDBC(Ja ......

Java 中的IO






<!--
@page { margin: 0.79in }
P { margin-bottom: 0.08in }
-->

Java中的
io

我对流的理解是:源到目的地的轨迹,所以流的一端是数据源(输入流)或者接收器(输出流),另一端是
io中的某个类;这里说明下,
Scanne ......

JAVA连接数据库大全

JAVA连接数据库大全
 
 
1.Oracle8/8i/9i数据库(thin模式)
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:ts"; //ts为数据库的SID
String user="sa";
String password="";
Connection conn= DriverManager.getConnection(url,u ......

采用Java的类进行md5加密

代码如下:
package com.test.j2se;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class MD5 {
/**数据加密
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
MessageDigest code = MessageD ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号