A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 鲍霄霄 中级黑马   /  2012-7-15 11:25  /  1402 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package bxx;

import java.awt.image.renderable.RenderableImage;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.nio.CharBuffer;
import java.util.Scanner;

public class Server {
        public static void init() throws IOException {
                ServerSocket server=new ServerSocket(8898);
                System.out.println("服务器启动...");

                while (true) {

                        Socket s = server.accept();
                       
                        ServerManager sm = new ServerManager(s);
                        new Thread(sm).start();
                       
                }
        }
         //main方法
        public static void main(String[] args) throws IOException {
                Server server=new Server();
                server.init();
        }
//
        class ServerManager implements Readable{
                 
        private Socket s=null;
        public ServerManager(Socket s){
                this.s=s;
        }
        public void run() throws IOException{
                if (s!=null) {
                        while (true) {
                         System.out.println("请输入您要发送的信息!");
                         Scanner b=new Scanner(System.in);
                         String s1=b.nextLine();
                        OutputStream out= s.getOutputStream();
                        out.write(s1.getBytes());
                        out.flush();
               
                        InputStream in=s.getInputStream();
                       
                        byte[] msg=new byte[1024];
                        in.read(msg);
                        System.out.print("客户端说:");
                        System.out.println(new String(msg).trim());
                 
                }
        }
       
        }
        @Override
        public int read(CharBuffer cb) throws IOException {
                // TODO Auto-generated method stub
                return 0;
        }
         
        }
        }

1 个回复

倒序浏览
本帖最后由 陆强强 于 2012-7-15 11:56 编辑

class Server {
        public static void init() throws IOException {
                ServerSocket server=new ServerSocket(8898);
                System.out.println("服务器启动...");

                while (true) {

                        Socket s = server.accept();
                        
                        ServerManager sm = new ServerManager(s);
                        new Thread(sm).start();
                        
                }
        }
         //main方法
        public static void main(String[] args) throws IOException {
                Server server=new Server();
                server.init();
        }
//
}//少个大括号
class ServerManager implements Runnable{//这里是实现Runnable
                 
        private Socket s=null;
        public ServerManager(Socket s){
                this.s=s;
        }
        public void run() {//run方法不能抛IOException,所以直接try,加Runtime异常
                try
                {
             if (s!=null) {
                        while (true) {
                         System.out.println("请输入您要发送的信息!");
                         Scanner b=new Scanner(System.in);
                         String s1=b.nextLine();
                        OutputStream out= s.getOutputStream();
                        out.write(s1.getBytes());
                        out.flush();
               
                        InputStream in=s.getInputStream();
                        
                        byte[] msg=new byte[1024];
                        in.read(msg);
                        System.out.print("客户端说:");
                        System.out.println(new String(msg).trim());
                 
              }
          }
        }
                catch (Exception e)
                {
                    throw new  RuntimeException();
                }
                                
   
        
        }
   
        public int read(CharBuffer cb) throws IOException {
               
                return 0;
        }
         
}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马