极简易版专家聊天程序--JAVA练手

呵呵,用JAVA包开发SOCKET连接,是很简单的呢~~~

DailyAdviceServer.java

import java.io.*;
import java.net.*;

public class DailyAdviceServer {

    String[] adviceList = {"Take smaller bites", "Go for the tight jeans", "代码写得好,要饭要到老", "You might want to rethink"};

    public void go() {
        try {
            ServerSocket serverSock = new ServerSocket(4242);

            while(true) {
                Socket sock = serverSock.accept();
                PrintWriter writer = new PrintWriter(sock.getOutputStream());
                String advice = getAdvice();
                writer.println(advice);
                writer.close();
                System.out.println(advice);
            }
        } catch(IOException ex) {
            ex.printStackTrace();
        } finally {
            //
        }
    }
    private String getAdvice() {
        int random = (int) (Math.random() * adviceList.length);
        return adviceList[random];
    }

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        DailyAdviceServer server = new DailyAdviceServer();
        server.go();

    }

}

 

DailyAdviceClient.java

import java.io.*;
import java.net.*;

public class DailyAdviceClient {
    public void go() {
        try {
            Socket s = new Socket("127.0.0.1", 4242);

            InputStreamReader streamReader = new InputStreamReader(s.getInputStream());
            BufferedReader reader = new BufferedReader(streamReader);

            String advice = reader.readLine();
            System.out.println("Today you should: " + advice);
            reader.close();

        } catch(IOException ex) {
            ex.printStackTrace();
        }
    }

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        DailyAdviceClient client = new DailyAdviceClient();
        client.go();

    }

}

丑陋的输出:

时间: 2024-09-29 01:15:09

极简易版专家聊天程序--JAVA练手的相关文章

使用JAVA编写一个聊天程序,要求有图形界面,还有就是要显示联系人,后天就要交作业了,求大神!

问题描述 JAVA编写,聊天程序,有图形界面,还有界面显示联系人,类似于QQ的,但是极简的就行,求大神帮助啊,我后天就要交了,谢谢大神!!!!! 解决方案 解决方案二:网上有源代码--解决方案三:哪里有,我怎么没有找到,帮忙找一下!解决方案四:引用1楼u013335717的回复: 网上有源代码-- 哪里有,我怎么没有找到,帮忙找一下!解决方案五:上大学的时候写过好像还在U盘里趴着呢

空前绝后的Java Swing实现的QQ聊天程序,支持文字图片文件表情发送

问题描述 JavaSESwing原创Spring+Hibernate+mySql实现的纯JAVA版QQ聊天程序,可以说是空前绝后.哈哈.可以私聊,群聊,发表情,发截屏,发在线和离线文件,消息记录永久保存.记住登录密码自动登录,切换用户界面皮肤风格(10几种),个性化消息内容和自己名字的颜色字体等.最近联系人,消息提示,悬浮图标等等.当新消息到达时,悬浮图标会变成一辆汽车在屏幕上跑来跑去,越跑越快,直到一定的速度后再恢复减速.直到您收取了新消息为止.现在可以下载了.运行界面截图请到下载地址去看吧.

聊天室-关于java的聊天程序,分服务端和客户端,请java大神帮我调试一下,我检查没编写错误

问题描述 关于java的聊天程序,分服务端和客户端,请java大神帮我调试一下,我检查没编写错误 //服务端 package chatApp; import java.net.*; import java.io.*; import java.util.*; public class chatserverthree implements Runnable { public static final int PORT=1234; protected ServerSocket listen; stat

网络编程-java聊天程序服务端多线程的添加问题。谢谢

问题描述 java聊天程序服务端多线程的添加问题.谢谢 现在服务器没有加多线程.打开一个客户端可以和服务器连接,第二个就连接不上了.是不是因为要给服务器添加多线程呢?怎么添加呢?谢谢(????`).我回头用电脑把服务端代码贴上来 解决方案 是socket吗, 把服务器从实例化一个socket到最后的代码 放到独立的线程中,在主方法中循环执行这个线程 解决方案二: 要加ID号码,并且用多线程编程 解决方案三: 这个跟服务器端是否是多线程没有关系.应该是你的服务器端处理不当导致的.

特别简单的Java聊天程序

问题描述 小弟刚学完java基础,练练手就做了一个特别简单的聊天程序,源代码如下:import java.net.*;import java.awt.*;import java.awt.event.*;public class Receive {Frame f=new Frame("聊天室");TextField tfIP=new TextField(15);TextArea lst=new TextArea();Label lb=new Label("IP");D

详解基于java的Socket聊天程序——客户端(附demo)_java

写在前面: 上周末抽点时间把自己写的一个简单Socket聊天程序的初始设计和服务端细化设计记录了一下,周二终于等来毕业前考的软考证书,然后接下来就是在加班的日子度过了,今天正好周五,打算把客户端的详细设计和Common模块记录一下,因为这个周末开始就要去忙其他东西了. 设计: 客户端设计主要分成两个部分,分别是socket通讯模块设计和UI相关设计. 客户端socket通讯设计: 这里的设计其实跟服务端的设计差不多,不同的是服务端是接收心跳包,而客户端是发送心跳包,由于客户端只与一个服务端进行通

在网络聊天程序中怎么自动侦测局域网内部启动该软件的用户

问题描述 在网络聊天程序中怎么自动侦测局域网内部启动该软件的用户 在网络聊天程序中怎么自动侦测局域网内部启动该软件的用户,用java语言实现 解决方案 只能说思想,计时器 客户端发送数据到主服务器

Android 蓝牙开发实例--蓝牙聊天程序的设计和实现

Android 蓝牙开发实例--蓝牙聊天程序的设计和实现 转自:http://blog.csdn.net/dlutbrucezhang/article/details/8963696 作者在这里介绍的这个实例是Google SDK中提供的一个蓝牙聊天程序,简单但信息量巨大,非常适合初学者学习蓝牙方面的知识. 在学习这个实例前请读者仔细阅读并理解Socket的工作原理和实现机制,作者的这篇博客中有详细的介绍: http://blog.csdn.net/dlutbrucezhang/article/

使用JavaWeb webSocket实现简易的点对点聊天功能实例代码_java

首先给大家声明一点:需要 jdk 7 , tomcat需要支持websocket的版本  1.InitServlet    该类主要是用来初始化构造将来存储用户身份信息的map仓库,利用其初始化方法Init 初始化仓库, 利用其静态方法getSocketList 获得对应的用户身份信息.    webSocket ,我认为MessageInbound 用来识别登录人的信息,用它来找到对应的人,推送消息.每次登录都会产生一个MessageInbound.   这里的 HashMap<String,