- 浏览: 744775 次
- 性别:
- 来自: 湖北
-
文章分类
最新评论
-
SE_XiaoFeng:
用mysqldump命令行导出。这个报错唉。错误提示信息如下: ...
linux下如何导入导出MySQL数据库 -
SE_XiaoFeng:
文章写的干脆了当,我喜欢!
linux下如何导入导出MySQL数据库 -
niky6688:
网站咋打不开呢
beckham herms birki ...
【原创】上周给公司新做了一个网站,请大家审阅! -
niky6688:
哈哈
new chanel bags 2012
burbe ...
今天我抢了一个咪咪??? -
ydsakyclguozi:
...
jsp资源管理器也可能是木马
import java.io.*; public class ServerClass{ public static void main(String args[]){ int i=0; try{ ServerSocket ss=new ServerSocket(2345);//为该服务器开设一个端口,该端口供客户机程序来访问。 System.out.println("服务器启动......"); while(true){ Socket sock=ss.accept();//sock对象接收客户机的连接请求,程序运行到这里将处于等待状态。 i++; System.out.println("接受连接请求"+i); PrintStream out=new PrintStream(sock.getOutputStream());//获得输出流 out.println("你好"); out.close(); sock.close(); } }catch(IOException e){ System.out.println(e); } } }
import java.io.*; import java.net.*; public class AClient{ public static void main(String args[]){ try{ Socket sock=new Socket("127.0.0.1",2345);//根据具体的(正在用的机器的)IP和端口,创建一个Socket对象 BufferedReader in=new BufferedReader(new InputStreamReader(sock.getInputStream()));//获得输入流。 String s=in.readLine();//从输入流读入一行内容。 System.out.println(s);//打印出 in.close(); }catch(IOException e){} } }
import java.io.*; import java.net.*; import javax.swing.*; import java.awt.event.*; import java.awt.*; /** 用户界面ServerUI */ public class ServerUI extends JFrame{ JTextArea mainArea; JTextArea sendArea; JTextField indexArea; SvrCom server; public void setServer( SvrCom server ) { this.server = server; } public ServerUI() { super("服务器端"); Container contain = getContentPane(); contain.setLayout( new BorderLayout() ); mainArea = new JTextArea(); JScrollPane mainAreaP = new JScrollPane( mainArea ); JPanel panel = new JPanel(); panel.setLayout( new BorderLayout() ); sendArea = new JTextArea(3, 8); JButton sendBtn = new JButton("发送"); sendBtn.addActionListener( new ActionListener()//注册动作监听器 { public void actionPerformed(ActionEvent ae) { server.sendMsg(sendArea.getText());//把信息传递到客户端 mainArea.append( "【服务器】" + sendArea.getText() + "\n" );//把信息显示在服务器的聊天记录区域 sendArea.setText(""); } } ); JPanel tmpPanel = new JPanel(); indexArea = new JTextField(2); indexArea.setText("0"); tmpPanel.add( sendBtn ); tmpPanel.add( indexArea ); panel.add( tmpPanel, BorderLayout.EAST ); panel.add(sendArea, BorderLayout.CENTER ); contain.add( mainAreaP, BorderLayout.CENTER ); contain.add( panel, BorderLayout.SOUTH ); setSize( 500, 300); setVisible( true ); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main(String[] args) { ServerUI ui = new ServerUI(); SvrCom server = new SvrCom( ui );//创建并启动网络通讯线程,准备接受客户端数据包 } }
/** 通讯类SvrCom负责守候数据到来 */ class SvrCom extends Thread//网络通讯类 { Socket client; ServerSocket soc; BufferedReader in; PrintWriter out; ServerUI ui; // ChatServer server; public SvrCom( ServerUI ui ){ //初始化SvrCom类 this.ui = ui; ui.setServer( this ); try { soc = new ServerSocket(6666 ); //开设服务器端口6666 System.out.println( "启动服务器成功,等待端口号:6666" ); client = soc.accept();//当客户机请求连接时,创建一条链接 System.out.println( "连接成功!来自" + client.toString() ); in = new BufferedReader( new InputStreamReader( client.getInputStream()) ); out = new PrintWriter( client.getOutputStream() , true); } catch( Exception ex ) { System.out.println( ex ); } start(); } public void run () {// 用于监听客户端发送来的信息 String msg = ""; while( true ) { try { msg = in.readLine();//从in对象上读数据信息 } catch( SocketException ex ) { System.out.println(ex); break; } catch( Exception ex ) { System.out.println(ex); } if( msg!=null && msg.trim()!="" ) { System.out.println(">>" + msg ); ui.mainArea.append( msg + "\n" ); } } } public void sendMsg( String msg ) {// 用于发送信息 try { out.println("【服务器】" + msg );//把信息写入输出流 } catch(Exception e) { System.out.println( e ); } } }
import java.io.*; import java.net.*; import javax.swing.*; import java.awt.event.*; import java.awt.*; /** 用户界面ClientUI */ public class ClientUI extends JFrame { JTextArea mainArea; JTextArea sendArea; ChatClient client; JTextField ipArea; JButton btnLink; public void setClient( ChatClient client ) { this.client = client; } public ClientUI() { super("客户端"); Container contain = getContentPane(); contain.setLayout( new BorderLayout() ); mainArea = new JTextArea(); JScrollPane mainAreaP = new JScrollPane( mainArea );//为文本区添加滚动条 JPanel panel = new JPanel(); panel.setLayout( new BorderLayout()); sendArea = new JTextArea(3, 8); JButton sendBtn = new JButton("发送"); sendBtn.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent ae) { client.sendMsg( sendArea.getText() ); mainArea.append( "【客户端】"+sendArea.getText() + "\n" ); sendArea.setText(""); } } ); JPanel ipPanel = new JPanel(); ipPanel.setLayout( new FlowLayout( FlowLayout.LEFT , 10, 10 ) ); ipPanel.add( new JLabel("服务器:") ); ipArea = new JTextField( 12 ) ; ipArea.setText( "127.0.0.1" ); ipPanel.add( ipArea ); btnLink = new JButton("连接"); ipPanel.add( btnLink ); btnLink.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent ae) { client = new ChatClient( ipArea.getText() , 6666, ClientUI.this );//创建socket对象 ClientUI.this.setClient( client ); } } ); panel.add( sendBtn, BorderLayout.EAST ); panel.add( sendArea, BorderLayout.CENTER ); contain.add( ipPanel, BorderLayout.NORTH ); contain.add( mainAreaP, BorderLayout.CENTER ); contain.add( panel, BorderLayout.SOUTH ); setSize( 500, 300); setVisible( true ); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main(String[] args) { ClientUI ui = new ClientUI(); } }
/** 通讯类ChatClient负责守候数据到来 */ class ChatClient extends Thread { Socket sc;// 对象sc,用来处理与服务?鞯耐ㄐ? BufferedReader in;//声明输入流缓冲区,用于存储服务器发来的信息 PrintWriter out;//声明打印输出流,用于信息的发送 ClientUI ui; public ChatClient( String ip, int port, ClientUI ui ){//初始化ChatClient类 this.ui = ui; try{ sc = new Socket(ip , port); // 创建sc, 用服务器ip和端口作参数 System.out.println("已顺利联接到服务器。"); out = new PrintWriter( sc.getOutputStream(), true ); in = new BufferedReader( new InputStreamReader( sc.getInputStream() ) ); } catch(Exception e) { System.out.println( e ); } start(); } public void run () { // 用于监听服务器端发送来的信息 String msg = ""; while( true ) { try { msg = in.readLine();//从缓冲区读入一行字符存于msg } catch( SocketException ex ) { System.out.println(ex); break; } catch( Exception ex ) { System.out.println(ex); } if( msg!=null && msg.trim()!="" ) {//若msg信息不为空 System.out.println(">>" + msg ); ui.mainArea.append( msg + "\n" );//把msg信息添加到客户端的文本区域内 } } } public void sendMsg( String msg ) {// 用于发送信息 try { out.println("【客户端】" + msg ); } catch(Exception e) { System.out.println( e ); } } }
评论
4 楼
smalltiger1984
2009-05-18
import java.io.*;
public class ServerClass{
public static void main(String args[]){
int i=0;
try{
ServerSocket ss=new ServerSocket(2345);//为该服务器开设一个端口,该端口供客户机程序来访问。
System.out.println("服务器启动......");
while(true){
Socket sock=ss.accept();//sock对象接收客户机的连接请求,程序运行到这里将处于等待状态。
i++;
System.out.println("接受连接请求"+i);
PrintStream out=new PrintStream(sock.getOutputStream());//获得输出流
out.println("你好2");
out.close();
sock.close();
}
}catch(IOException e){
System.out.println(e);
}
}
}
public class ServerClass{
public static void main(String args[]){
int i=0;
try{
ServerSocket ss=new ServerSocket(2345);//为该服务器开设一个端口,该端口供客户机程序来访问。
System.out.println("服务器启动......");
while(true){
Socket sock=ss.accept();//sock对象接收客户机的连接请求,程序运行到这里将处于等待状态。
i++;
System.out.println("接受连接请求"+i);
PrintStream out=new PrintStream(sock.getOutputStream());//获得输出流
out.println("你好2");
out.close();
sock.close();
}
}catch(IOException e){
System.out.println(e);
}
}
}
3 楼
zhou2324
2009-05-18
import java.io.*; public class ServerClass{ public static void main(String args[]){ int i=0; try{ ServerSocket ss=new ServerSocket(2345);//为该服务器开设一个端口,该端口供客户机程序来访问。 System.out.println("服务器启动......"); while(true){ Socket sock=ss.accept();//sock对象接收客户机的连接请求,程序运行到这里将处于等待状态。 i++; System.out.println("接受连接请求"+i); PrintStream out=new PrintStream(sock.getOutputStream());//获得输出流 out.println("你好"); out.close(); sock.close(); } }catch(IOException e){ System.out.println(e); } } }
2 楼
xf.zhouwenjun
2009-05-16
yuantong 写道
老兄,把代码格式化行不?代码放到代码片段不是更好?
呵呵,下次 我再贴的时间 注意
1 楼
yuantong
2009-05-13
老兄,把代码格式化行不?代码放到代码片段不是更好?
发表评论
-
属性文件的读取 Java
2010-12-11 08:51 1211import java.util.ResourceBu ... -
【精华】Java项目生成静态页面
2010-12-11 08:47 1266需转载,请注明转载出处!本文地址: http://blog. ... -
【珍藏版】微软等数据结构+算法面试100题全部出炉[100题首次完整亮相]
2010-12-06 16:33 2917转至: http://blog.csdn.net/v_JULY ... -
【原创】Log4j 日志文件 使用
2010-12-02 11:37 1249log4j.properties 代码 log4j.ro ... -
【精华】保护自己的网站资源
2010-11-19 08:03 1214禁止用“另存为”保存页面 <head> < ... -
【精华】Window.Open()网页弹出窗口大全
2010-11-16 18:01 1606【1、最基本的弹出窗口代码】 <!--<br ... -
【精华】页面右下角弹出类似QQ或MSN的消息提示
2010-11-05 16:36 1071具体实现见 附件 主要是 针对 在框架中 如何实现 后下 ... -
【原创】苦恼了1个星期的DIV 滚动条置底, 今天终于实现了!!!
2010-11-05 10:58 3452<script type="text/ja ... -
【急救......】Could not find the main class.program will exit
2010-11-01 17:23 1646Java中Could not find the main cl ... -
屏蔽 F5 刷新键
2010-10-28 11:09 823<script language="JavaS ... -
web页面中按ESC关闭窗口
2010-10-28 11:04 1455<script language="jav ... -
web页面中如果想让用户复制页面内容粘贴时加入一些自定义信息
2010-10-28 11:04 871如果让用户复制你网站上的信息到别处粘贴时,附加自定义信息可以采 ... -
防止页面被多次提交
2010-10-28 11:03 19191. javascript ,设置一个变量,只允许提交一 ... -
Javascript打印代码
2010-10-18 14:38 924Javascript打印代码 实现打印功能的javasc ... -
【原创】struts+mysql+jsp 分页源码
2010-09-16 10:42 957具体代码见附件 一起学习,xf.zhouwenjun@163 ... -
【原创】struts 动态 设置radio 与 select 的默认值
2010-08-06 13:10 1661运行效果见 附件,有好的解决方法请分享xf.zhouwenju ... -
【原创】平时编码中积累的,非常好用,且很全的【时间工具类】
2010-07-21 17:42 930具体java类 请下载附件!烦请大家一起完善完善,请给我也分享 ... -
【原创】苦苦寻找的: ajax 定时读取数据,无刷新在页面显示
2010-07-19 17:17 1066demo 见附件 -
【绝】在web工程下 调用js 日历控件 报错【missing ( before function parameters)
2010-07-09 11:28 1158报错代码 function document.onclick( ... -
【精髓】非常好用的日历控件,可以自由的选择日期 时分秒
2010-07-09 10:57 17631、Calendar.js代码如下 省略! 具体内容 ...
相关推荐
【标题】"简单的Java程序聊天软件"涉及到的核心技术是基于Java语言实现的网络通信,它构建了一个服务端(ChatServer)和客户端(ChatClient)之间的交互系统,允许两者进行实时的文本聊天。在这个项目中,Java的...
Java聊天小程序是一款基于Java语言开发的简单通讯应用,它利用了Java Socket编程技术来实现客户端与服务器端的实时通信。Socket在计算机网络中扮演着重要角色,它是TCP/IP协议族的一部分,提供了进程间的网络通信...
Java Web聊天程序是一种基于Web的实时通信应用,它允许用户通过浏览器进行实时交流。这个程序的核心技术栈包括Java、Web技术和WebSocket协议。下面将详细解释这些知识点。 1. **Java**:Java是一种广泛使用的面向...
JAVA聊天程序JAVA聊天程序JAVA聊天程序JAVA聊天程序JAVA聊天程序JAVA聊天程序JAVA聊天程序JAVA聊天程序JAVA聊天程序JAVA聊天程序JAVA聊天程序JAVA聊天程序JAVA聊天程序JAVA聊天程序
【标题】:“用Java实现的一个聊天程序” 在IT领域,编程语言Java因其强大的跨平台能力和丰富的库支持,常被用于开发各种类型的应用程序,包括聊天程序。本项目是一个基于客户端-服务器(Client-Server,简称CS)...
java局域网聊天程序,java局域网聊天程序,java局域网聊天程序,java局域网聊天程序,java局域网聊天程序,java局域网聊天程序
我用JAVA的servlet写的这个小聊天程序,总共才几KB,但可以在不同的电脑上进行多人对话,删除记录等,我把数据库验证登陆写进去了,你若不想要这个登陆程序可以删掉,那样就不需要登陆直接开始聊天了。这个程序结构...
在Java编程语言中实现一个聊天程序是一项常见的任务,它涵盖了多个关键知识点,包括网络通信、数据库管理和用户界面设计。下面将详细阐述这些方面。 首先,网络通信是聊天程序的基础,通常使用TCP或UDP协议。在Java...
【标题】:“JAVA聊天程序JAVA聊天程序2(API)” 【描述】:此项目是一个基于JAVA语言实现的聊天程序,可能包含多个版本或迭代,强调了API(应用程序接口)的使用,意味着它可能通过API与其他系统或服务进行交互,...
Java SE程序 qq聊天Java SE程序 qq聊天Java SE程序 qq聊天Java SE程序 qq聊天Java SE程序 qq聊天Java SE程序 qq聊天Java SE程序 qq聊天Java SE程序 qq聊天Java SE程序 qq聊天Java SE程序 qq聊天Java SE程序 qq聊天...
Java简易聊天程序是一种基于Java编程语言实现的交互式通信应用,它允许用户通过网络进行文本聊天。这个程序的核心概念和关键技术主要包括多线程、网络编程、输入/输出流以及简单的用户界面设计。以下是对这些关键...
【JAVA局域网聊天程序】是一种使用Java编程语言开发的通信应用,专为在局域网环境下实现用户之间的即时通讯而设计。这个程序通常包含了服务器端和客户端两部分,允许在同一网络中的多台设备间进行消息传递。通过这种...
实现Java Socket聊天多线程编程,图形化界面,多人聊天(群聊),私人聊天,是基于本地模拟的Java聊天程序。 Java Socket聊天程序是我用了三天的时间写出来,用Netbeans建的工程,图形化界面是Netbeans拖拉出来的,...
java聊天小程序。java聊天小程序java聊天小程序。java聊天小程序。java聊天小程序。
Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)...
Java多人聊天程序是一种基于Java编程语言开发的交互式通信应用,它允许多个用户在同一平台上进行实时交流。在本文中,我们将深入探讨这个程序的核心技术、设计原则以及实现的关键知识点。 首先,Java作为后端开发的...
简单的Java聊天室程序简单的Java聊天室程序简单的Java聊天室程序简单的Java聊天室程序简单的Java聊天室程序简单的Java聊天室程序简单的Java聊天室程序
Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)Java聊天室程序(java)...
Java TCP聊天程序是一种基于TCP协议实现的网络通信应用,它允许在局域网内的设备之间进行实时的文字聊天、在线状态追踪以及用户管理等操作。在这个项目中,开发者可能使用了Java语言的核心网络编程API,包括Socket和...
【Java聊天程序】是一种使用Java编程语言开发的交互式应用程序,它允许用户通过网络进行实时通信。这个程序的核心是客户端和服务器端的架构,其中ChatServer是服务器端的部分,负责处理来自多个客户端的连接请求,并...