鱼C论坛

 找回密码
 立即注册
查看: 3306|回复: 7

[作品展示] 【原创-全仿QQ软件-附源代码】求评分打赏~

[复制链接]
发表于 2014-9-17 23:32:19 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
软件截图见这里:http://bbs.fishc.com/thread-52575-1-1.html
项目构建目录如下(该版本是后期的一个版本):
skyqq2015.png

@小甲鱼  说好的代码来了~

skyqq2015

skyqq2015

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +5 收起 理由
~风介~ + 5 + 5 + 5 java都已经忘记啦~

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-9-17 23:34:12 | 显示全部楼层
本帖最后由 Python_GoWithMe 于 2014-9-17 23:35 编辑
  1. package com.skyqq2015.qq.client.biz;

  2. import java.io.BufferedInputStream;
  3. import java.io.BufferedOutputStream;
  4. import java.io.DataInputStream;
  5. import java.io.DataOutputStream;
  6. import java.io.IOException;
  7. import java.net.Socket;

  8. import javax.swing.JTextArea;

  9. import com.skyqq2015.qq.client.po.ClientPoint;


  10. public class ClientManager {
  11.         public static final int PORT = 7129;
  12.         public static String IP=null;

  13.         public static ClientPoint cp;
  14.        

  15.         /**
  16.          * 连接服务器服务
  17.          */
  18.         public static void start() {
  19.       
  20.                 Socket so = null;
  21.                 DataInputStream dis = null;
  22.                 DataOutputStream dos = null;
  23.                 try {
  24.                         so = new Socket(IP, PORT);
  25.                         System.out.println("连接到服务器……");
  26.                         dis = new DataInputStream(new BufferedInputStream(
  27.                                         so.getInputStream()));
  28.                         dos = new DataOutputStream(new BufferedOutputStream(
  29.                                         so.getOutputStream()));
  30.                 } catch (IOException e) {
  31.                        
  32.                 }

  33.                 cp = new ClientPoint(so, dis, dos);
  34.                
  35.         

  36.         }

  37.         /**
  38.          * 向客户端发送消息
  39.          */
  40.         public void send(final String msg) {
  41.                 if (cp != null) {
  42.                         new Thread(new Runnable() {

  43.                                 @Override
  44.                                 public void run() {

  45.                                         try {
  46.                                                 cp.getDos().writeUTF(msg);
  47.                                                 cp.getDos().flush();
  48.                                         } catch (IOException e) {
  49.                                                 // TODO Auto-generated catch block
  50.                                                 e.printStackTrace();
  51.                                         }

  52.                                 }
  53.                         }).start();
  54.                 }
  55.         }

  56.         /**
  57.          * 接收消息
  58.          */
  59.         public void receive(JTextArea showMsgArea) {
  60.                 new Thread(new Receiver(showMsgArea)).start();
  61.         }
  62.         public ClientManager(String ip)
  63.         {
  64.                 this.IP=ip;
  65.                
  66.         }
  67. }
复制代码
ClientManager.java //客户端
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-9-17 23:37:16 | 显示全部楼层
本帖最后由 Python_GoWithMe 于 2014-9-17 23:40 编辑
  1. package com.skyqq2015.qq.client.biz;

  2. import java.io.IOException;

  3. import javax.swing.JTextArea;

  4. import com.skyqq2015.qq.client.po.ClientPoint;


  5. public class Receiver implements Runnable {

  6.         private JTextArea showMsgArea;
  7.         
  8.         public static boolean bool = true;
  9.         
  10.         public Receiver(JTextArea showMsgArea) {
  11.                 this.showMsgArea = showMsgArea;
  12.         }
  13.         
  14.         @Override
  15.         public void run() {
  16.                
  17.                 ClientManager.start();
  18.                
  19.                 while(bool){
  20.                         System.out.println("==============");
  21.                         String msg = null;
  22.                         try {
  23.                                 msg = ClientManager.cp.getDis().readUTF();
  24.                         } catch (IOException e) {
  25.                                 // TODO Auto-generated catch block
  26.                                 e.printStackTrace();
  27.                         }
  28.                         if(msg != null && !msg.isEmpty()){
  29.                                 showMsgArea.append(msg);
  30.                         }
  31.                 }
  32.         }

  33. }
复制代码
Receiver.java// 客户端message接受
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-9-17 23:39:22 | 显示全部楼层
  1. package com.skyqq2015.qq.server.biz;

  2. import java.io.IOException;

  3. import javax.swing.JTextArea;

  4. import com.skyqq2015.qq.server.po.ServerPoint;

  5. public class Receiver implements Runnable {

  6.         private JTextArea showMsgArea;
  7.        
  8.         public static boolean bool = true;
  9.        
  10.         public Receiver(JTextArea showMsgArea) {
  11.                 this.showMsgArea = showMsgArea;
  12.         }
  13.        
  14.         @Override
  15.         public void run() {
  16.                
  17.                 ServerManager.start();
  18.                
  19.                 while(bool){
  20.                         System.out.println("++++++++++++++");
  21.                         String msg = null;
  22.                         try {
  23.                                 msg = ServerManager.sp.getDis().readUTF();
  24.                         } catch (IOException e) {
  25.                                 // TODO Auto-generated catch block
  26.                                 e.printStackTrace();
  27.                         }
  28.                         if(msg != null && !msg.isEmpty()){
  29.                                 showMsgArea.append(msg);
  30.                         }
  31.                 }
  32.         }

  33. }
复制代码
Receiver.java //消息接收
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-9-17 23:41:10 | 显示全部楼层
  1. package com.skyqq2015.qq.server.biz;

  2. import java.io.BufferedInputStream;
  3. import java.io.BufferedOutputStream;
  4. import java.io.DataInputStream;
  5. import java.io.DataOutputStream;
  6. import java.io.IOException;
  7. import java.net.ServerSocket;
  8. import java.net.Socket;

  9. import javax.swing.JTextArea;

  10. import com.skyqq2015.qq.server.po.ServerPoint;

  11. public class ServerManager {

  12.         public static final int PORT = 7129;

  13.         public static ServerPoint sp;


  14.         public static void start() {

  15.                 Socket so = null;
  16.                 DataInputStream dis = null;
  17.                 DataOutputStream dos = null;
  18.                 try {
  19.                         ServerSocket server = new ServerSocket(PORT);
  20.                         System.out.println("服务器启动……");
  21.                         so = server.accept();
  22.                         System.out.println("有客户接入……");
  23.                         dis = new DataInputStream(new BufferedInputStream(
  24.                                         so.getInputStream()));
  25.                         dos = new DataOutputStream(new BufferedOutputStream(
  26.                                         so.getOutputStream()));
  27.                 } catch (IOException e) {
  28.                         // TODO Auto-generated catch block
  29.                         e.printStackTrace();
  30.                 }

  31.                 sp = new ServerPoint(so, dis, dos);

  32.         }

  33.         /**
  34.          * 向客户端发送消息
  35.          */
  36.         public void send(final String msg) {
  37.                 if (sp != null) {
  38.                         new Thread(new Runnable() {

  39.                                 @Override
  40.                                 public void run() {

  41.                                         try {
  42.                                                 sp.getDos().writeUTF(msg);
  43.                                                 sp.getDos().flush();
  44.                                         } catch (IOException e) {
  45.                                                 // TODO Auto-generated catch block
  46.                                                 e.printStackTrace();
  47.                                         }

  48.                                 }
  49.                         }).start();
  50.                 }
  51.         }

  52.         /**
  53.          * 接收消息
  54.          */
  55.         public void receive(JTextArea showMsgArea) {
  56.                 new Thread(new Receiver(showMsgArea)).start();
  57.         }
  58. }
复制代码
ServerManager.java //服务器连接启动管理
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-9-17 23:43:15 | 显示全部楼层
由于终极版本和jar丢失 只能找到这个了 也是接近完工的成品  C/S交互模式  由于这份注释太少 让人不好意思发了都  量比较大 下次接着发 晚安
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-9-17 23:45:54 | 显示全部楼层
强烈支持楼主ing……
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-11-30 23:59:11 | 显示全部楼层
真是难得给力的帖子啊。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-5-14 00:37

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表