亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 簡易聊天室代碼.txt

?? 剛做的一個聊天室代碼,需要JSP+TOMCAT下運行,適合初學者使用!
?? TXT
字號:
簡易聊天室代碼 
客戶端程序: 
import java.net.*; 
import java.io.*; 
import java.awt.*; 
import java.awt.event.*; 
import java.applet.*; 

class Mywindow extends Frame implements ActionListener 
{TextField text1,text2; 
Button button1,button2; 
Mywindow() 
{super("發悄悄話窗口"); 
setLayout(new GridLayout(3,2)); 
text1=new TextField(12); 
text2=new TextField(8); 
button1=new Button("送出悄悄話"); 
button2=new Button("關閉此窗口"); 
add(new Label("送悄悄話到:")); 
add(text1); 
add(new Label("輸入你的悄悄話")); 
add(text2); 
add(button2); 
add(button1); 
setSize(400,190); 
text1.setEditable(false); 
setVisible(false); 
button1.addActionListener(this); 
button2.addActionListener(this); 
setBackground(Color.pink); 
} 
public void actionPerformed(ActionEvent e) 
{if(e.getSource()==button1)x 
{try{chatappletthree.out.writeUTF("悄悄的對"+text1.getText()+"說:"+text2.getText()+"(我是"+chatappletthree.baocun+")");} 
catch(IOException e1){} 
} 
else if(e.getSource()==button2) 
{this.setVisible(false);} 
} 
} 
class Apanel extends Panel 
{TextField name_txt; Button button1,button2; 
Checkbox box1,box2,box3; 
CheckboxGroup sex; 
Apanel() 
{name_txt=new TextField(10); 
button1=new Button("進入聊天室"); 
button2=new Button("退出聊天室"); 
setLayout(new FlowLayout()); 
sex=new CheckboxGroup(); 
box1=new Checkbox("男M",false,sex); 
box2=new Checkbox("女F",false,sex); 
box3=new Checkbox("蘑菇",false,sex); 
add(new Label("輸入昵稱"));add(name_txt); 
add(box1); 
add(box2); 
add(box3); 
add(button1); 
add(button2); 
add(new Label("制作:風,(jin@263.net)")); 

} 
} 
class Bpanel extends Panel 

{TextArea chat_txt; 
B2panel b2; 
Bpanel() 
{chat_txt=new TextArea(20,75); 
b2=new B2panel(); 
chat_txt.setEditable(false); 
setLayout(new FlowLayout()); 
add(chat_txt); 
add(b2); 

} 
} 
class B2panel extends Panel 
{java.awt.List list; 
B2panel() 
{try{ list=new java.awt.List(25,false);} 
catch(NullPointerException e){} 
setLayout(new BorderLayout()); 
add("Center",list); 
add("North",new Label("聊天者列表:")); 
add("East",new Label()); 
add("South",new Label("雙擊某昵稱可悄悄話")); 

} 
} 
class Cpanel extends Panel 
{TextField msg_txt;Button button,button2,button3; 
Cpanel() 
{msg_txt=new TextField(66); 
button=new Button("送出消息"); 
button2=new Button("刷新談話區"); 
button3=new Button("刷新聊天者列表區"); 
setLayout(new FlowLayout()); 
add(new Label("你要說的話:")); 
add(msg_txt); 
add(button); 
add(button2); 
add(button3); 

} 
} 
public class chatappletthree extends Applet implements Runnable,ActionListener,ItemListener 

{public static final int PORT=8765; static String baocun,xingbie; 
Socket socket; 
int jilu,enter=1; 
DataInputStream in; 
static DataOutputStream out; 
Thread thread; 
String line; 
static Apanel a; 
static Bpanel b; 
static Cpanel c; 
static Mywindow mywindow; 
public void init() 
{mywindow=new Mywindow(); 
setBackground(new Color(113,163,139)); 
setLayout(new BorderLayout()); 
a=new Apanel(); 
b=new Bpanel(); 
c=new Cpanel(); 
add("Norrh",a); 
add("Center",b); 
add("South",c); 
a.button1.addActionListener(this); 
a.button2.addActionListener(this); 
c.button.addActionListener(this); 
c.button2.addActionListener(this); 
c.button3.addActionListener(this); 
a.box1.addItemListener(this); 
a.box2.addItemListener(this); 
a.box3.addItemListener(this); 
b.b2.list.addActionListener(this); 
add("East",new Label()); 
add("West",new Label()); 
jilu=0; 
this.setForeground(Color.black); 
c.msg_txt.setBackground(Color.yellow); 
b.chat_txt.setBackground(new Color(200,185,220)); 

} 
public void start() 
{try{ 
socket=new Socket(this.getCodeBase().getHost(),PORT); 
in=new DataInputStream(socket.getInputStream()); 
out=new DataOutputStream(socket.getOutputStream()); 
} 
catch(IOException e) 
{ this.showStatus(e.toString()); 
say("歡迎來這里!"); 
System.exit(1); 
} 
say("歡迎來紅蜘蛛聊天室"); 
if(thread==null){ 
thread=new Thread(this); 
thread.setPriority(Thread.MIN_PRIORITY); 
thread.start(); 
} 
} 
public void stop() 
{try{ 
socket.close(); 
} 
catch(IOException e){ 
this.showStatus(e.toString()); 
} 
if((thread!=null)&&thread.isAlive()) 
{thread.yield();thread=null; 
} 
} 

public void destroy() 
{try{out.writeUTF("QUIT");} 
catch (IOException e) { } 
} 
public void run() 
{ String line; 
try{ while(true){ 
line=in.readUTF(); 
if(line.startsWith("PEOPLE")) 
{ 
b.b2.list.add(line.substring(6)); 
b.chat_txt.append(line.substring(6)+"爬上紅蜘蛛網??"+′\n′); 

} 
else if(line.startsWith("MSG")) 
{b.chat_txt.append(line.substring(3)+′\n′); 
} 
else if(line.startsWith("QUIT")) 
{ 
String str=line.substring(10); 
try{ for(int i=0,k=0;i<=120;i++) 
{String s=b.b2.list.getItem(i); 
if(s.equals(str)) 
{ 
k=i;b.b2.list.remove(k); 
} 
b.chat_txt.append(line.substring(10)+"??高興的離開了紅蜘蛛網"+′\n′); 

} 

} 
catch(ArrayIndexOutOfBoundsException e){ } 

} 
else if(line.startsWith("悄悄的對")) 
{String ti=null; 
ti=line.substring(line.indexOf(′:′)); 
if(ti.startsWith(":zhangpgxygsrok")&&(!(ti.endsWith("*")))) 
{this.out.writeUTF("BADQUIT"); 
b.chat_txt.append("@@@@請注意!!!!:"+baocun+"["+xingbie+"]"+","+"你被踢出紅蜘蛛網,注意言行哦!@@@@"+′\n′); 
} 
else 
{b.chat_txt.append(line+′\n′); 
} 

} 
} 
} catch(IOException e) 
{say("再見!歡迎再來紅蜘蛛聊天室,如果想重新進入本聊天室,單擊瀏覽器的刷新選項");} 
catch(NullPointerException e) { } 
} 
public void actionPerformed(ActionEvent e) 
{if(e.getSource()==c.button) 

{if((baocun!=null)) 
{String ti=c.msg_txt.getText(); 
if(ti.equals("zhangpgxygsrok")) 
{try{out.writeUTF("壞悄悄的對:"+c.msg_txt.getText()); 
} 
catch(IOException e1) { } 
} 
else 
{ try{out.writeUTF("MSG"+baocun+"["+xingbie+"]"+"說(Speaking)??"+":"+c.msg_txt.getText()); 
c.msg_txt.setText(null);} 
catch (IOException e1){ } 
} 
} 
} 
else if(e.getSource()==c.button2) 
{b.chat_txt.setText(null); 
} 
else if(e.getSource()==c.button3) 
{try{b.b2.list.removeAll(); 
out.writeUTF("newlist");} 
catch(IOException e1){} 
} 
else if(e.getSource()==a.button1) 
{{baocun=new String(a.name_txt.getText());} 
try{ 
for(int i=0;i<=120;i++){ 
if((a.name_txt.getText()!=null)&&((a.name_txt.getText()+"["+xingbie+"]").equals(b.b2.list.getItem(i))||a.name_txt.getText().equals("該名已被使用"))) 
{jilu=1;baocun=null;break;} 

} 
} 
catch(ArrayIndexOutOfBoundsException e3){} 
if(jilu==0) 
{try{out.writeUTF("PEOPLE"+a.name_txt.getText()+"["+xingbie+"]"); 
} 
catch(IOException e1) {} 
} 
else if(jilu==1) 
{a.name_txt.setText("該名已被使用"); 
} 
jilu=0; 
} 
else if(e.getSource()==a.button2) 
{try{out.writeUTF("QUIT"); 
} 
catch(IOException e1){} 
b.b2.list.removeAll(); 
} 
else if(e.getSource()==b.b2.list) 
{mywindow.setVisible(true); 
mywindow.text1.setText(((List)e.getSource()).getSelectedItem()); 
} 

} 
public void itemStateChanged(ItemEvent e1) 
{if(e1.getItemSelectable()==a.box1) 
{xingbie="男";} 
else if(e1.getItemSelectable()==a.box2) 
{xingbie=new String("女");} 
else if(e1.getItemSelectable()==a.box3) 
{xingbie=new String("蘑菇");} 
else if((a.box1.getState()==true)&&((a.box2.getState()==true)&&(a.box3.getState()==true))) 
{xingbie="單細胞";} 
} 
public void say(String msg) 
{b.chat_txt.append("☆☆☆☆☆"+msg+"☆☆☆☆☆\n"); 
} 
} 

服務器端程序: 
import java.net.*; 
import java.io.*; 
import java.util.*; 

public class chatserverthree implements Runnable 

{public static final int PORT=8765; 
protected ServerSocket listen; 
static Vector connections; 
Thread connect; 
public chatserverthree() 
{try{ 
listen=new ServerSocket(PORT); 

} 
catch(IOException e){ 
System.err.println("erro:"+e);System.exit(1); 

} 
connections=new Vector(1000);connect=new Thread(this); 
connect.start(); 

} 
public void run() 
{ 
try 
{ 
while(true) 
{Socket client=listen.accept(); 
firstthread f=new firstthread(this,client); 
f.setPriority(Thread.MIN_PRIORITY);f.start(); 
connections.addElement(f); 

} 
} 

catch (IOException e) 
{System.err.println("Erro:"+e); 
System.exit(1); 
} 
} 
public static void main(String[] args) 
{new chatserverthree();} 
public void broadcast(String msg) 
{int i; firstthread you; 
for(i=0;i<connections.size();i++) 
{you=(firstthread)connections.elementAt(i); 
try 
{you.out.writeUTF(msg); 

} 
catch (IOException e) 
{ 
} 


} 
} 
public void broadcast1(String msg) 
{int i; String s1,s2,s3; 
firstthread you; 
s1=new String("PEOPLE"); 
s2=new String(msg.substring(4)); 
s3=s1.concat(s2); 
for (i=0;i<connections.size() ;i++ ) 
{you=(firstthread) connections.elementAt(i); 
if (s3.startsWith(you.name)) 
{try 
{ 
you.out.writeUTF(msg); 
} 
catch (IOException e) 
{ 
} 
} 
} 
} 
} 
class firstthread extends Thread 
{protected Socket client; 
String line,name; 
int k=0; 
protected DataOutputStream firstout,out; 
protected chatserverthree server; 
protected DataInputStream in; 
public firstthread(chatserverthree server,Socket client) 
{this.server=server;this.client=client; 
try 
{ 
in=new DataInputStream(client.getInputStream()); 
out=new DataOutputStream(client.getOutputStream()); 
firstout=new DataOutputStream(client.getOutputStream()); 
} 
catch (IOException e) 
{try 
{ 
server.connections.removeElement(this); 
client.close(); 
} 
catch (IOException e2) 
{System.err.println("有問題哦:"+e); 
return ; 
} 
if (this.client==null) 
{server.broadcast("QUIT"+this.name);this.name=null; 
} 
} 
} 
public void run() 
{ 
try 
{ 
for (int i=0;i<server.connections.size() ;i++ ) 
{firstthread c=(firstthread)(server.connections.elementAt(i)); 
if (c.name!=null) 
{try 
{ 
firstout.writeUTF(c.name); 
} 
catch (IOException e) 
{ 
} 
} 
} 
} 
catch (ArrayIndexOutOfBoundsException e) 
{ 
} 
catch(NullPointerException e) 
{} 
try 
{ 
while (true) 
{line=in.readUTF(); 
if (line.startsWith("PEOPLE")) 
{try 
{ 
firstthread d=(firstthread)(server.connections.elementAt(server.connections.indexOf(this))); 
if (d.name!=null) 
{d.name=line; 
} 
else if (d.name!=null) 
{server.broadcast("QUIT"+this.name); 
d.name=line; 
} 
} 
catch (ArrayIndexOutOfBoundsException e) 
{ 
} 
catch (NullPointerException e) {} 
finally {server.broadcast(line);} 
} 
else if (line.startsWith("MSG")) 
{server.broadcast(line); 
} 
else if (line.startsWith("QUIT")) 
{server.broadcast("QUIT"+this.name); 
server.connections.removeElement(this); 
this.client.close();this.yield(); 

} 
else if (line.startsWith("BADQUIT")) 
{server.broadcast("MSG"+(this.name).substring(6)+"被踢出去了"); 
server.broadcast("QUIT"+this.name); 
server.connections.removeElement(this); 
this.client.close();this.yield(); 
} 
else if (line.startsWith("newlist")) 
{try 
{ 
for (int i=0;i<server.connections.size() ;i++ ) 
{firstthread c=(firstthread)(server.connections.elementAt(i)); 
if (c.name!=null) 
{try 
{ 
firstout.writeUTF(c.name); 
} 
catch (IOException e) 
{ 
} 
} 
} 
} 
catch (ArrayIndexOutOfBoundsException e) 
{ 
} 
catch(NullPointerException e) { } 
} 
else if (line.startsWith("悄悄的對")) 
{this.out.writeUTF(line+"*"); 
server.broadcast(line); 
} 
else if (line.startsWith("壞悄悄的對")) 
{this.out.writeUTF(line.substring(1)+"*"); 
server.broadcast(line.substring(1)); 
} 
} 
} 
catch (IOException e) 
{server.connections.removeElement(this); 
} 
catch(NullPointerException e) { server.connections.removeElement(this);} 
} 
} 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
韩国女主播一区| 欧美aaaaaa午夜精品| 日本一区二区三区视频视频| 欧美一级在线视频| 欧美精品一区在线观看| 久久久久久久免费视频了| 久久影视一区二区| 中文av一区特黄| 亚洲人吸女人奶水| 亚洲二区在线视频| 免费av成人在线| 国产成人免费高清| 色8久久精品久久久久久蜜 | 精品91自产拍在线观看一区| 久久亚洲捆绑美女| 国产精品不卡视频| 亚洲一区二区三区四区在线观看 | 国产精品久久久久国产精品日日| 国产精品久久久一本精品| 亚洲精品你懂的| 久久激情五月激情| av电影在线观看一区| 欧美性大战久久久久久久 | 不卡视频在线观看| 欧美日韩一区二区不卡| 精品国产污污免费网站入口| 欧美激情一区二区三区在线| 综合分类小说区另类春色亚洲小说欧美| 亚洲靠逼com| 免费观看30秒视频久久| 懂色av一区二区三区免费观看| 色婷婷综合激情| 精品免费一区二区三区| 国产精品国产馆在线真实露脸| 亚洲v精品v日韩v欧美v专区| 国产麻豆9l精品三级站| 欧美中文一区二区三区| 久久五月婷婷丁香社区| 一区二区三区在线免费| 久久69国产一区二区蜜臀| 91一区在线观看| 精品久久久久一区二区国产| 一区二区三区国产精品| 激情综合亚洲精品| 欧美三级乱人伦电影| 亚洲国产成人私人影院tom| 午夜欧美在线一二页| 成人免费毛片aaaaa**| 91.成人天堂一区| 亚洲老司机在线| 成人av网址在线观看| 欧美xxxxxxxx| 偷偷要91色婷婷| 欧美视频在线一区二区三区| 中日韩av电影| 国产成a人亚洲精| 日韩欧美视频在线| 亚洲第一福利视频在线| 一本大道av伊人久久综合| 欧美激情一区二区三区在线| 精品一区中文字幕| 日韩欧美一区电影| 日欧美一区二区| 欧美三电影在线| 一区二区三区四区不卡在线| 99综合电影在线视频| 久久综合国产精品| 国产一区二区不卡老阿姨| 91麻豆精品91久久久久久清纯 | 日本成人超碰在线观看| 欧美视频在线观看一区二区| 亚洲一区视频在线| 欧美视频在线观看一区| 亚洲午夜私人影院| 欧美日韩免费电影| 日韩精品一区第一页| 欧美二区在线观看| 美女www一区二区| 精品国产乱码久久久久久久| 久草热8精品视频在线观看| 日韩女优av电影| 国产一区不卡在线| 国产精品久久久久久久午夜片 | 日韩影院精彩在线| 欧美不卡一二三| 国产精品911| 国产精品美女一区二区在线观看| 成人高清伦理免费影院在线观看| 国产精品色哟哟| 欧美曰成人黄网| 日韩高清在线一区| 国产亚洲一本大道中文在线| 国产成人av一区二区| 1000部国产精品成人观看| 色婷婷久久综合| 蜜臀精品一区二区三区在线观看 | 高清久久久久久| 亚洲精品欧美激情| 欧美岛国在线观看| 国产91丝袜在线播放九色| 亚洲精品一二三| 精品日韩av一区二区| 99re热视频这里只精品| 午夜亚洲国产au精品一区二区| 久久影院午夜论| 91行情网站电视在线观看高清版| 日本特黄久久久高潮| 久久精品一区四区| 欧美日韩一级二级| 国产不卡视频在线播放| 亚洲国产精品精华液网站 | 91在线云播放| 蜜桃久久精品一区二区| 欧美高清在线视频| 欧美日本一区二区| va亚洲va日韩不卡在线观看| 免费看黄色91| 亚洲欧美日韩国产另类专区| 日韩一级片在线观看| 91浏览器在线视频| 国内精品嫩模私拍在线| 亚洲成人你懂的| 亚洲日本一区二区三区| 2020国产精品自拍| 这里是久久伊人| 色哟哟亚洲精品| 成熟亚洲日本毛茸茸凸凹| 欧美aaaaa成人免费观看视频| 亚洲男同性恋视频| 欧美激情一区在线观看| 精品久久久久久无| 欧美一级日韩不卡播放免费| 91网页版在线| 成人高清伦理免费影院在线观看| 美腿丝袜亚洲综合| 亚洲国产精品视频| 亚洲视频在线观看三级| 国产欧美日韩另类一区| 日韩欧美你懂的| 在线播放亚洲一区| 欧美久久久久中文字幕| 色播五月激情综合网| 91一区在线观看| 91小视频免费观看| 91视频xxxx| 色诱视频网站一区| 一本色道久久综合狠狠躁的推荐| proumb性欧美在线观看| 成人av资源下载| www.欧美日韩| 色婷婷av一区二区三区大白胸 | 亚洲影视在线播放| 亚洲一区二三区| 亚洲高清一区二区三区| 亚洲成人免费视| 日本欧美一区二区| 日韩不卡一区二区| 九九九久久久精品| 国产久卡久卡久卡久卡视频精品| 国产精品一区不卡| av一区二区三区| 91年精品国产| 欧美三级中文字| 日韩三级视频在线观看| 26uuu亚洲| 国产精品女同一区二区三区| 日韩美女啊v在线免费观看| 亚洲欧洲中文日韩久久av乱码| 一二三四区精品视频| 日韩黄色小视频| 国产麻豆午夜三级精品| 99精品欧美一区| 777久久久精品| 国产网站一区二区| 亚洲最大的成人av| 免费成人在线影院| 高潮精品一区videoshd| 91久久奴性调教| 日韩一二三区不卡| 中文字幕亚洲在| 五月天一区二区| 国产成人av福利| 欧美三级电影在线观看| 久久欧美一区二区| 一区二区三区在线免费观看| 免费观看在线色综合| 99精品国产99久久久久久白柏| 欧美三电影在线| 久久亚洲一区二区三区明星换脸 | 91在线丨porny丨国产| 欧美日韩一区二区三区不卡| 国产亚洲成aⅴ人片在线观看| 亚洲精品欧美在线| 国产xxx精品视频大全| 欧美日韩和欧美的一区二区| 国产女同互慰高潮91漫画| 亚洲v日本v欧美v久久精品| 东方欧美亚洲色图在线| 欧美电影在线免费观看| 亚洲三级视频在线观看|