重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

java局域网聊天代码 java 局域网

急求一个JAVA编写的局域网聊天代码?不要求很复杂。只要可以在两台机子上简单的对话就可以。

//以下引入包

创新互联公司-专业网站定制、快速模板网站建设、高性价比黄骅网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式黄骅网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖黄骅地区。费用合理售后完善,十余年实体公司更值得信赖。

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;//标签

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

JRadioButton r1,r2;//单选按纽

ButtonGroup bg;//组

JPasswordField textpass;//密码域

JButton buttonregit,buttonreset;//注册按纽 重写按纽

JPanel p;//面板

String sex;//定义性别字符串

URL url;//统一资源定位

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("联系电话:");

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

textname.setToolTipText("请在这输入你的用户名");

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

textaddress.setToolTipText("请在这输入你的地址");

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

textmail.setToolTipText("请在这里输入你的E-mail地址");

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

textphone.setToolTipText("请在这输入你的电话号码");

r1=new JRadioButton("男"); r1.setBackground(new Color(47,177,210));//设置颜色

r2=new JRadioButton("女"); r2.setBackground(new Color(47,177,210));//设置颜色

bg=new ButtonGroup();

bg.add(r1);bg.add(r2);//加入组,实现单选

textpass=new JPasswordField(15);

textpass.setToolTipText("在这里输入密码");

textpass.setForeground(Color.red);

buttonregit=new JButton("注册"); buttonregit.setBackground(new Color(47,177,210));//设置颜色

buttonregit.setToolTipText("点击按纽完成注册");

buttonreset=new JButton("填写"); buttonreset.setBackground(new Color(47,177,210));//设置颜色

buttonreset.setToolTipText("点击按纽刷新重写");

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);//按纽事件的监听

buttonreset.addActionListener(this);//按纽事件的监听

r1.addItemListener(this);//选择事件的监听

r2.addItemListener(this);//选择事件的监听

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,"用户名已经存在,请更换名字!");

textname.setText("");//设置为空,重新输入

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));

}//创建文件

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);//连接上网址

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,"用户名已经存在,请更换名字!");

textname.setText("");//设置为空,重新输入

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));

}//创建文件

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);//连接上网址

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("女");

}

}

}

参考资料:试试看,刚在网上找的

怎么用java做局域网的聊天工具(聊天室)?

呵呵,楼主您好!要用Java做聊天室说简单也不简单,但是说难呢也不难.

说简单点,就是会话跟踪技术(我个人这样理解).要做聊天室,您需要

使用到的工具: tomcat 服务器(因为是免费的,其他也可以哦,呵呵).

Myeclipse(sun公司提供的编写Java程序的工具,别说你不知道哈,

哪样的话我就晕倒了哦,呵呵)

页面框架的设计:index.jsp(聊天室主页面)index_top.jsp(聊天室的顶部页面)

usersonline.jsp(在线人数的统计及显示页面) sendMessage.jsp(发送信息的页面)

showMessage.jsp(显示聊天信息的页面)register.jsp(用户注册的页面)

login.jsp(用户登录页面)

当然,这是最简单的设计方式咯.您也可以设计得更好点.

页面介绍与功能:

index.jsp 主要是聊天室的主页面.由上中下3个框架组成,中间部分在分为

左右2个框架.实际上index.jsp就是一个由于5个框架组成的页面

顶部框架:放index_top.jsp页面.可以设计自己聊天室的特色(比如说:logo)

中间部分的左边框架:showMessage.jsp 显示聊天的信息

中间部分的右边框架:usersonline.jsp(在线人数的统计及显示页面)

底部框架:sendMessage.jsp 这个发送信息的jsp页面.不多说吧

聊天室的框架的设计大楷就是这样子咯

实现聊天:

1.编写一个servlet,用户处理的信息(包括验证用户是否登录和聊天信息)。

2.用户发送信息之后,将发送的信息存放到Application中(群聊)(放在session中就是私聊)

3.显示信息的页面每个XX秒中获取session或者Application中的数据显示出来就OK了

更多的东西还是需要您学习Ajax之后再做,会有不一样的效果哦。祝您成功哟.呵呵

我想用java中的udp做聊天工具怎么连接局域网两台电脑,举出具体事例,有代码的

首先确定两台电脑都在同一个局域网。两台电脑都要装有java的运行环境,(直接两台电脑都装jdk吧 ,jre也是可以的)把代码分别拷贝到两台电脑上,假如用你的电脑做服务器,另一台电脑做客户端,先起你电脑的服务器,再在你电脑起一个客户端,然后在另一台电脑上再起一个客户端,这样两台电脑的客户端就可以通讯了。

注意:另一台电脑代码上面的IP地址要正确真上你电脑的IP地址

不懂的再继续问

初学java,想请各位大神帮忙分析一段有关局域网聊天程序

在知道里发代码,发截图就好,没必要全贴上来。

局域网聊天的程序原理:

1、在同一个网络。

2、有临时或者永久数据库,进行数据传输与访问。

3、有单独服务器或者用户服务器。

至于具体的学习,我给你个建议吧。

一步一步,照着代码写,你边写,你就会报错,通过解决错误,你就会很快学会了。

祝楼主学习愉快~


文章题目:java局域网聊天代码 java 局域网
本文URL:http://cqcxhl.cn/article/doeicpo.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP