「简单聊天室java」简单聊天室设计报告网络编程
今天给各位分享简单聊天室java的知识,其中也会对简单聊天室设计报告网络编程进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
Java聊天室该怎么设计?
看cs还是bs模式的了,如果是bs就很简单了,每次提交留言,然后放在公共变量中,每隔几秒就重新刷新一次,把公共变量中的信息刷出来。这个有很多种变形,比如ajax实现不刷新的更新,或者http长连接实现服务器推数据。
cs的画,自己写的话,就socket了,就是控制起来太复杂了。
比较推荐用线程的协议,比如xmpp什么的,有很多嵌入式的服务器可以用阿,主要是jabber协议的。。。
如果自己写的话,也没有比较从socket开始写,我以前一个人写过,简直就是折磨人的麻烦,可以用rmi、webservice什么的,主要是在数据封装和控制信息上能简化一些~~~~~
注意使用oo思想哈~比如所有信息都封装为一个对象,直接通过objectstream读写,然后通过反射,判断是控制信息还是即时消息。。。
java一对一聊天室是怎么实现的?
想要实现java一对一聊天室的方法比较简单,要么直接找源码,要么使用第三方的sdk做一些开发。建议可以考虑接入ZEGO即时通讯SDK来实现,支持Android java开发,集成方便,一对一、一对多聊天室都可快速搭建,重要的是不担心消息会丢失,千万级并发也稳定,个人建议你们可以试试。
java语音聊天室怎样实现啊?
实现java语音聊天室的方法很简单,要么自己从零研发,要么直接使用别人的成品,意思是找网上的第三方,他们自己有研发产品的。建议考虑ZEGO即构科技,他们的语聊房SDK很好用的,提供低延迟和低成本的方案供选择,在保障语音质量的前提下,码率最低可到8kbps,可以试试。
jsp java编写简单聊天室
%@ page contentType="text/html; charset=gb2312"
language="java" import="java.sql.*,javax.servlet.*,javax.servlet.http.*" errorPage="" %
%
request.setCharacterEncoding("gb2312");
%
html
head
titleUntitled Document/title
meta http-equiv="Content-Type" content="text/html; charset=gb2312"
/head
body
一个简单的聊天室
brhrfont color=red
%
String content=(String)getServletContext().getAttribute(new String("chatTopic_1"));
out.println(content);
getServletContext().setAttribute("chatTopic_1",content+(String)request.getParameter("content")+"br");
%
/font
hr
form action="servletContext_chat.jsp"
input type=text name=content
input type=submit value="说话呀"
/form
/body
/html
java简易聊天室
你要的就是点对点通信,见以下例子:
1.简单服务器端
/*
import java.net.*;
import java.io.*;
*/
ServerSocket server=null;
try {
server=new ServerSocket(%%1);
}catch(Exception e){
System.out.println("不能监听:"+e.toString());
}
Socket socket=null;
try {
socket=server.accept();
BufferedReader %%3=new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter %%4=new PrintWriter(socket.getOutputStream());
String %%2=%%3.readLine();
%%4.println("");
%%4.flush();
%%4.close();
%%3.close();
}
catch(IOException e){
System.out.println("出错:"+e.toString());
}finally{
try {
if(socket!=null){
socket.close();
server.close();
}
}
catch(IOException e){
e.printStackTrace();
}
}
2.简单客户端
/*
import java.net.*;
import java.io.*;
*/
Socket socket=null;
try {
socket=new Socket(%%1,%%2);
PrintWriter %%3=new PrintWriter(socket.getOutputStream());
BufferedReader %%4 = new BufferedReader(new InputStreamReader(socket.getInputStream()));
%%3.println("");
%%3.flush();
String %%5=%%4.readLine();
%%6
%%3.close();
%%4.close();
}catch(Exception e){
e.printStackTrace();
}
finally{
try {
socket.close();
}
catch(IOException e){
e.printStackTrace();
}
}
3.获得本机IP
//import java.net.*;
String strIP = null;
try
{
strIP =InetAddress.getLocalHost().getHostAddress().toString();
}
catch(UnknownHostException e)
{
e.printStackTrace();
}
/*
%%1=InetAddress.getLocalHost().getHostAddress();
EnumerationNetworkInterface netInterfaces = null;
try {
netInterfaces = NetworkInterface.getNetworkInterfaces();
while (netInterfaces.hasMoreElements()) {
NetworkInterface ni = netInterfaces.nextElement();
System.out.println("DisplayName:" + ni.getDisplayName());
System.out.println("Name:" + ni.getName());
EnumerationInetAddress ips = ni.getInetAddresses();
while (ips.hasMoreElements()) {
System.out.println("IP:"
+ ips.nextElement().getHostAddress());
}
}
} catch (Exception e) {
e.printStackTrace();
}
*/
5.点对点通信
/*
import java.io.*;
import java.net.*;
*/
public class %%6 extends Thread {
@Override
public void run() {
ServerSocket server = null;
try {
server = new ServerSocket(5000);
} catch (Exception e) {
System.out.println("不能监听:" + e.toString());
}
Socket socket = null;
try {
socket = server.accept();
BufferedReader req = new BufferedReader(new InputStreamReader(
socket.getInputStream()));
PrintWriter os = new PrintWriter(socket.getOutputStream());
Debug.p(req.readLine());
os.println("Server");
os.flush();
os.close();
req.close();
} catch (IOException e) {
System.out.println("出错:" + e.toString());
} finally {
try {
if (socket != null) {
socket.close();
server.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
Thread t = new %%6();
t.start();
String strIP = null;
try {
strIP = InetAddress.getLocalHost().getHostAddress().toString();
} catch (UnknownHostException e) {
e.printStackTrace();
}
Socket socket = null;
try {
socket = new Socket(strIP, 4000);
PrintWriter pw = new PrintWriter(socket.getOutputStream());
BufferedReader br = new BufferedReader(new InputStreamReader(socket
.getInputStream()));
pw.println("Client");
pw.flush();
Debug.p(br.readLine());
pw.close();
br.close();
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
简单聊天室java的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于简单聊天室设计报告网络编程、简单聊天室java的信息别忘了在本站进行查找喔。