java局域網(wǎng)聊天代碼 java 局域網(wǎng)

急求一個(gè)JAVA編寫的局域網(wǎng)聊天代碼?不要求很復(fù)雜。只要可以在兩臺機(jī)子上簡單的對話就可以。

//以下引入包

創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比黃驊網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式黃驊網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋黃驊地區(qū)。費(fèi)用合理售后完善,十余年實(shí)體公司更值得信賴。

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.io.*;

import java.net.*;

import java.applet.*;

public class regit extends JApplet implements ActionListener,ItemListener//接口

{

String s=null;

//對象的聲明

JLabel labelname,labelpass,labelsxe,labeladdress,labelmail,labelphone;//標(biāo)簽

JTextField textname,textaddress,textmail,textphone;//文本框

JRadioButton r1,r2;//單選按紐

ButtonGroup bg;//組

JPasswordField textpass;//密碼域

JButton buttonregit,buttonreset;//注冊按紐 重寫按紐

JPanel p;//面板

String sex;//定義性別字符串

URL url;//統(tǒng)一資源定位

BufferedWriter out1,out2;//流

BufferedReader in;

//布局方式

GridBagLayout gbl;

GridBagConstraints gc;

AppletContext co;//接口

//初始化

public void init()

{

//new 對象

labelname=new JLabel("用 戶 名:");

labelpass=new JLabel("用戶密碼:");

labelsxe=new JLabel("性別:");

labeladdress=new JLabel("地址:");

labelmail=new JLabel("電子郵件:");

labelphone=new JLabel("聯(lián)系電話:");

textname=new JTextField(15); textname.setForeground(Color.red);

textname.setToolTipText("請?jiān)谶@輸入你的用戶名");

textaddress=new JTextField(15);textaddress.setForeground(Color.red);

textaddress.setToolTipText("請?jiān)谶@輸入你的地址");

textmail=new JTextField(15); textmail.setForeground(Color.red);

textmail.setToolTipText("請?jiān)谶@里輸入你的E-mail地址");

textphone=new JTextField(15); textphone.setForeground(Color.red);

textphone.setToolTipText("請?jiān)谶@輸入你的電話號碼");

r1=new JRadioButton("男"); r1.setBackground(new Color(47,177,210));//設(shè)置顏色

r2=new JRadioButton("女"); r2.setBackground(new Color(47,177,210));//設(shè)置顏色

bg=new ButtonGroup();

bg.add(r1);bg.add(r2);//加入組,實(shí)現(xiàn)單選

textpass=new JPasswordField(15);

textpass.setToolTipText("在這里輸入密碼");

textpass.setForeground(Color.red);

buttonregit=new JButton("注冊"); buttonregit.setBackground(new Color(47,177,210));//設(shè)置顏色

buttonregit.setToolTipText("點(diǎn)擊按紐完成注冊");

buttonreset=new JButton("填寫"); buttonreset.setBackground(new Color(47,177,210));//設(shè)置顏色

buttonreset.setToolTipText("點(diǎn)擊按紐刷新重寫");

gbl=new GridBagLayout(); ///////////////////////////////////////

gc=new GridBagConstraints(); //////采用GridBagLayout布局方式////////

p=new JPanel();

p.setLayout(gbl);

p.setBackground(new Color(47,177,210));

this.getContentPane().add(p);//加入面板

gc.anchor=GridBagConstraints.NORTHWEST;

gc.gridx=2;

gc.gridy=2;

gbl.setConstraints(labelname,gc);

p.add(labelname);

gc.anchor=GridBagConstraints.NORTHWEST;

gc.gridx=4;

gc.gridy=2;

gbl.setConstraints(textname,gc);

p.add(textname);

gc.anchor=GridBagConstraints.NORTHWEST;

gc.gridx=2;

gc.gridy=4;

gbl.setConstraints(labelpass,gc);

p.add(labelpass);

gc.anchor=GridBagConstraints.NORTHWEST;

gc.gridx=4;

gc.gridy=4;

gbl.setConstraints(textpass,gc);

p.add(textpass);

gc.anchor=GridBagConstraints.NORTHWEST;

gc.gridx=2;

gc.gridy=6;

gbl.setConstraints(labelsxe,gc);

p.add(labelsxe);

gc.anchor=GridBagConstraints.NORTHWEST;

gc.gridx=4;

gc.gridy=6;

gbl.setConstraints(r1,gc);

p.add(r1);

gc.anchor=GridBagConstraints.NORTHWEST;

gc.gridx=5;

gc.gridy=6;

gbl.setConstraints(r2,gc);

p.add(r2);

gc.anchor=GridBagConstraints.NORTHWEST;

gc.gridx=2;

gc.gridy=8;

gbl.setConstraints(labeladdress,gc);

p.add(labeladdress);

gc.anchor=GridBagConstraints.NORTHWEST;

gc.gridx=4;

gc.gridy=8;

gbl.setConstraints(textaddress,gc);

p.add(textaddress);

gc.anchor=GridBagConstraints.NORTHWEST;

gc.gridx=2;

gc.gridy=10;

gbl.setConstraints(labelmail,gc);

p.add(labelmail);

gc.anchor=GridBagConstraints.NORTHWEST;

gc.gridx=4;

gc.gridy=10;

gbl.setConstraints(textmail,gc);

p.add(textmail);

gc.anchor=GridBagConstraints.NORTHWEST;

gc.gridx=2;

gc.gridy=12;

gbl.setConstraints(labelphone,gc);

p.add(labelphone);

gc.anchor=GridBagConstraints.NORTHWEST;

gc.gridx=4;

gc.gridy=12;

gbl.setConstraints(textphone,gc);

p.add(textphone);

gc.anchor=GridBagConstraints.NORTHWEST;

gc.gridx=2;

gc.gridy=16;

gbl.setConstraints(buttonregit,gc);

p.add(buttonregit);

gc.anchor=GridBagConstraints.NORTHWEST;

gc.gridx=4;

gc.gridy=16;

gbl.setConstraints(buttonreset,gc);

p.add(buttonreset);

/////////////////////////////////////////////

co=this.getAppletContext();

/////////////////////////////////////////////

buttonregit.addActionListener(this);//按紐事件的監(jiān)聽

buttonreset.addActionListener(this);//按紐事件的監(jiān)聽

r1.addItemListener(this);//選擇事件的監(jiān)聽

r2.addItemListener(this);//選擇事件的監(jiān)聽

textphone.addActionListener(this);

}

public void actionPerformed(ActionEvent e)

{

//注冊按紐事件

if(e.getSource()==buttonregit)

{

String s1=textname.getText(); ////////////////////

String s2=new String(textpass.getPassword());////////////////////

String s3=textaddress.getText(); // 定義字符串 //

String s4=textmail.getText(); ////////////////////

String s5=textphone.getText(); ////////////////////

//判斷注冊資料 信息 是否為空

if(s1.length()==0 || s2.length()==0 ||s3.length()==0 ||s4.length()==0 ||s5.length()==0)

{

int error=JOptionPane.INFORMATION_MESSAGE;

JOptionPane.showMessageDialog(null,"資料不能為空,請重新注冊!","【溫馨提示】",error);

return;//彈出對話框并返回

}

try//寫入到txt文件

{

in=new BufferedReader(new FileReader("d:\\迷離視線聊天室\\password.txt"));

}

catch(Exception ee){}

String ss=s1;

try

{

while((s=in.readLine())!=null)

{

if(s.startsWith(ss))

{

JOptionPane.showMessageDialog(null,"用戶名已經(jīng)存在,請更換名字!");

textname.setText("");//設(shè)置為空,重新輸入

textpass.setText("");

textaddress.setText("");

textmail.setText("");

textphone.setText("");

return;

}

}

}

catch(Exception ee){}

///////////////////////////以上代碼判斷是否有同名

{

try

{

out1=new BufferedWriter(new FileWriter("d:\\迷離視線聊天室\\password.txt",true));

out2=new BufferedWriter(new FileWriter("d:\\迷離視線聊天室\\message.txt",true));

}//創(chuàng)建文件

catch(Exception ee)

{}

try

{

out1.write(s1+"#"+s2);//寫

out1.newLine();

out2.write("用戶名:"+s1);

out2.newLine();

out2.write("密碼:"+s2);

out2.newLine();

out2.write("性別:"+sex);

out2.newLine();

out2.write("地址:"+s3);

out2.newLine();

out2.write("電子郵件:"+s4);

out2.newLine();

out2.write("電話:"+s5);

out2.newLine();

out1.flush();

out2.flush();//清理緩沖

out1.close();

out2.close();

}

catch(Exception ee)

{}

JOptionPane.showMessageDialog(null,"注冊成功!");

try

{

String qss="";

url=new url(/qss);//連接上網(wǎng)址

co.showDocument(url);

}

catch(Exception exx)

{}

}

}

//////////////////////以下為回車事件

if(e.getSource()==textphone)

{

String s1=textname.getText(); ////////////////////

String s2=new String(textpass.getPassword());////////////////////

String s3=textaddress.getText(); // 定義字符串 //

String s4=textmail.getText(); ////////////////////

String s5=textphone.getText(); ////////////////////

//判斷注冊資料 信息 是否為空

if(s1.length()==0 || s2.length()==0 ||s3.length()==0 ||s4.length()==0 ||s5.length()==0)

{

int error=JOptionPane.INFORMATION_MESSAGE;

JOptionPane.showMessageDialog(null,"資料不能為空,請重新注冊!","【溫馨提示】",error);

return;//彈出對話框并返回

}

try//寫入到txt文件

{

in=new BufferedReader(new FileReader("d:\\迷離視線聊天室\\password.txt"));

}

catch(Exception ee){}

String ss=s1;

try

{

while((s=in.readLine())!=null)

{

if(s.startsWith(ss))

{

JOptionPane.showMessageDialog(null,"用戶名已經(jīng)存在,請更換名字!");

textname.setText("");//設(shè)置為空,重新輸入

textpass.setText("");

textaddress.setText("");

textmail.setText("");

textphone.setText("");

return;

}

}

}

catch(Exception ee){}

///////////////////////////以上代碼判斷是否有同名

{

try

{

out1=new BufferedWriter(new FileWriter("d:\\迷離視線聊天室\\password.txt",true));

out2=new BufferedWriter(new FileWriter("d:\\迷離視線聊天室\\message.txt",true));

}//創(chuàng)建文件

catch(Exception ee)

{}

try

{

out1.write(s1+"#"+s2);//寫

out1.newLine();

out2.write("用戶名:"+s1+"密碼:"+s2+"性別:"+sex+"地址:"+s3+"電子郵件:"+s4+"電話:"+s5);//寫

out2.newLine();

out1.flush();

out2.flush();//清理緩沖

out1.close();

out2.close();

}

catch(Exception ee)

{}

JOptionPane.showMessageDialog(null,"注冊成功!");

try

{

String qss="";

url=new url(/qss);//連接上網(wǎng)址

co.showDocument(url);

}

catch(Exception exx)

{}

}

}

if(e.getSource()==buttonreset)//刷新重寫事件

{

textname.setText("");

textpass.setText("");

textaddress.setText("");

textmail.setText("");

textphone.setText("");

}

}

//////////////////////////////////////////

//

public void itemStateChanged(ItemEvent ex)

{

if(ex.getSource()==r1)

{

sex=new String("男");

}

else if(ex.getSource()==r2)

{

sex=new String("女");

}

}

}

參考資料:試試看,剛在網(wǎng)上找的

怎么用java做局域網(wǎng)的聊天工具(聊天室)?

呵呵,樓主您好!要用Java做聊天室說簡單也不簡單,但是說難呢也不難.

說簡單點(diǎn),就是會話跟蹤技術(shù)(我個(gè)人這樣理解).要做聊天室,您需要

使用到的工具: tomcat 服務(wù)器(因?yàn)槭敲赓M(fèi)的,其他也可以哦,呵呵).

Myeclipse(sun公司提供的編寫Java程序的工具,別說你不知道哈,

哪樣的話我就暈倒了哦,呵呵)

頁面框架的設(shè)計(jì):index.jsp(聊天室主頁面)index_top.jsp(聊天室的頂部頁面)

usersonline.jsp(在線人數(shù)的統(tǒng)計(jì)及顯示頁面) sendMessage.jsp(發(fā)送信息的頁面)

showMessage.jsp(顯示聊天信息的頁面)register.jsp(用戶注冊的頁面)

login.jsp(用戶登錄頁面)

當(dāng)然,這是最簡單的設(shè)計(jì)方式咯.您也可以設(shè)計(jì)得更好點(diǎn).

頁面介紹與功能:

index.jsp 主要是聊天室的主頁面.由上中下3個(gè)框架組成,中間部分在分為

左右2個(gè)框架.實(shí)際上index.jsp就是一個(gè)由于5個(gè)框架組成的頁面

頂部框架:放index_top.jsp頁面.可以設(shè)計(jì)自己聊天室的特色(比如說:logo)

中間部分的左邊框架:showMessage.jsp 顯示聊天的信息

中間部分的右邊框架:usersonline.jsp(在線人數(shù)的統(tǒng)計(jì)及顯示頁面)

底部框架:sendMessage.jsp 這個(gè)發(fā)送信息的jsp頁面.不多說吧

聊天室的框架的設(shè)計(jì)大楷就是這樣子咯

實(shí)現(xiàn)聊天:

1.編寫一個(gè)servlet,用戶處理的信息(包括驗(yàn)證用戶是否登錄和聊天信息)。

2.用戶發(fā)送信息之后,將發(fā)送的信息存放到Application中(群聊)(放在session中就是私聊)

3.顯示信息的頁面每個(gè)XX秒中獲取session或者Application中的數(shù)據(jù)顯示出來就OK了

更多的東西還是需要您學(xué)習(xí)Ajax之后再做,會有不一樣的效果哦。祝您成功喲.呵呵

我想用java中的udp做聊天工具怎么連接局域網(wǎng)兩臺電腦,舉出具體事例,有代碼的

首先確定兩臺電腦都在同一個(gè)局域網(wǎng)。兩臺電腦都要裝有java的運(yùn)行環(huán)境,(直接兩臺電腦都裝jdk吧 ,jre也是可以的)把代碼分別拷貝到兩臺電腦上,假如用你的電腦做服務(wù)器,另一臺電腦做客戶端,先起你電腦的服務(wù)器,再在你電腦起一個(gè)客戶端,然后在另一臺電腦上再起一個(gè)客戶端,這樣兩臺電腦的客戶端就可以通訊了。

注意:另一臺電腦代碼上面的IP地址要正確真上你電腦的IP地址

不懂的再繼續(xù)問

初學(xué)java,想請各位大神幫忙分析一段有關(guān)局域網(wǎng)聊天程序

在知道里發(fā)代碼,發(fā)截圖就好,沒必要全貼上來。

局域網(wǎng)聊天的程序原理:

1、在同一個(gè)網(wǎng)絡(luò)。

2、有臨時(shí)或者永久數(shù)據(jù)庫,進(jìn)行數(shù)據(jù)傳輸與訪問。

3、有單獨(dú)服務(wù)器或者用戶服務(wù)器。

至于具體的學(xué)習(xí),我給你個(gè)建議吧。

一步一步,照著代碼寫,你邊寫,你就會報(bào)錯(cuò),通過解決錯(cuò)誤,你就會很快學(xué)會了。

祝樓主學(xué)習(xí)愉快~

本文題目:java局域網(wǎng)聊天代碼 java 局域網(wǎng)
瀏覽路徑:http://muchs.cn/article30/doeicpo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、響應(yīng)式網(wǎng)站、微信公眾號、面包屑導(dǎo)航、全網(wǎng)營銷推廣外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司