1、java中TCP服务器连接数据库查询的问题
查询获得的结果是不是很大,本地返回很快,如果通过网络结果集很大的话就很慢,毕竟要握手之类的。
2、java代码TCP/IP网络通信服务器客户端,实现双方信息交互。
package com.weixin.test;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.Socket;
import org.junit.Test;
public class ScoketTest {
@Test
public void client() throws Exception{
InetAddress i=InetAddress.getByName("127.0.0.1");
Socket s=new Socket(i, 9000);
OutputStream outputStream = s.getOutputStream();
outputStream.write("服务端你好,我是客户端哦!".getBytes());
s.shutdownOutput();
InputStream inputStream=s.getInputStream();
int length=0;
byte[] bytes=new byte[1024];
while ((length=inputStream.read(bytes))!=-1) {
System.err.println(new String(bytes,0,length));
}
inputStream.close();
outputStream.close();
s.close();
}
@Test
public void server() throws Exception{
ServerSocket serverSocket=new ServerSocket(9000);
Socket socket = serverSocket.accept();
InputStream inputStream = socket.getInputStream();
OutputStream outputStream = socket.getOutputStream();
int length=0;
byte[] bytes=new byte[1024];
while ((length=inputStream.read(bytes))!=-1) {
System.err.println(new String(bytes, 0,length));
}
outputStream.write("客户端你好,本王已收到!".getBytes());
outputStream.close();
inputStream.close();
socket.close();
serverSocket.close();
}
}
3、求java网络高手,tcp最大连接问题
网络上来盛传的那个改连接数,我认自为基本上没用,关键是你要了解他的原理,
它的作用是改变单位时间内的并发连接数,也就是说你写个程序,想要在1秒内连接超过50(假设)此连接,是不被允许的,你只能达到10个,我认为一般应用足够了,比如下载应用,1秒不够,稍后软件都会重试,并不会影响你的下载速度,像windows 2003这样的操作系统,是不会做此限制的,作为服务器,它的目标就是提高网络吞吐量。
这样解释能明白否?
4、java网络编程中,对于客户端和服务器的tcp连接,如果客户端异常断开连接,服务器端如何获知,有什么方法?
这个得用java心跳处理机制。就是客户端每隔一段时间向服务器发送指定信息,如果服务器没有收到客服端发来的信息,这时服务器和客服端连接就已经断开。具体的心跳实现百度上很多。
5、java中,用哪一个类来表示tcp协议的服务器socket对象
服务端监复听:ServerSocket server=new ServerSocket(port);//port:绑定的端制口号
Socket client=server.accept();//监听端口,一旦取得连接则获得客户端的socket连接对象client
客户端: Socket s=new Socket(ip,port);//要连接的服务器的ip以及端口号
如果正常连接上之后,socket的对象可以获得InputStream和OutputStreame,然后就可以进行通信了
完成通信之后,执行socket对象的close()方法关闭连接,完成一次完整的socket连接
6、有个Java 项目,通过Socket Tcp长连接通信方式向服务器发送消息。
你这消息头、消息体的结构格式都定下来了,总长度就是固定的啊?消息体的长专度不是一共2+2+4+1=9个字节么属?消息格式肯定要按照服务端的要求进行发送,明显服务端不是java的程序。。但是java里是没有Unsigned Integer这种数据类型的(java的stream操作里提供了一些unsigned的方法,或者自己写方法来生成对应的字节格式),你可以按照他的要求,使用字节数组封装好,然后发送。
针对这个示例消息,你可以:
创建一个长度为9的字节数组。把“9”变成byte放入前两个字节(前两个字节数据应该为:0x00, 0x09。这是第一个字段,长度),后面的字段数据以此类推。一个字段一个字段处理成服务器要求的格式。
然后把字节流发送给服务端。
7、请问JAVA中创建一个TCP服务器端程序的骤是什么呢?
1.建立一个服务器socket并开始监听.
2.使用accept()方法取得新的连接.
3.建立输入和输出流.
4.在已专有的协议上产生会属话.
5.关闭客户端流和socket.
6.回到第二步或者到第七步.
7.关闭服务器socket.
8、想用JAVA做一个服务器,请问怎么利用TCP和线程,实现多个客户端同时在线,能与服务器进行交互?
服务器监听端口 做个无限循环 接到一个连接就创建一个通道线程,并将通道线程存储到一个list集合中
import java.io.BufferedReader;客服端代码 可以用在局域网中用多台来连接测试
9、Java TCP如何实现一个服务器向多个客户机发送信息?
你服务器accept方法后是不是会得到一个Socket
为这个Socket(是通过这个Socket和客户端的Socket进行沟通)分配一个服务
我是这么用的ServerThread tt=new ServerThread(socket);
class ServerThread
{
private Socket so;
public ServerThread(Socket s)
{
this.so=s;
}
public void send()
{
}
public void receive()
{
Thread re=new Thread()
{
public void run()
{
}
}
}
}
相当于你用手机拨打人工服务,会给你分配一个客服
为这个Socket分配后,写一个发送方法,和一个接收方法(线程)
然后把ServerThread tt=new ServerThread(socket);中的tt保存到集合中去,要单独给某个发送
就从集合中取出来.send();这个方法应该带个参数,把消息对象传过去就是
10、java 的 tcp 建立客户端和服务器的连接问题
0.0.0.0表示监听所有IP,在有公网IP的情况下,云服务器上一般这么填写