📄 serversockets.java
字号:
package org.hsuper;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.UnknownHostException;
public class ServerSockets {
/**
* @param args
*/
private static String KS=Double.toString(Math.random()*1000);
private static String KB="---hello world---";
private String KA="";
private int Rport=5001;
private int Sport=5550;
private ServerSocket serverSocket=null;
private Socket Ssocket=null;
private String address=null;
private int cport;
private InputStream is=null;
private InputStreamReader isr=null;
private BufferedReader br=null;
public ServerSockets() throws IOException
{
serverSocket=new ServerSocket(Rport);
System.out.print("服务器启动");
}
public void serviec()
{
while(true)
{
Socket Rsocket=null;
try {
Rsocket=serverSocket.accept();
is=Rsocket.getInputStream();
isr=new InputStreamReader(is);
br=new BufferedReader(isr);
String read="";
//KA=br.readLine();
while((read=br.readLine())!=null)
{
System.out.print("service:"+read+"\n");
KA=KA+read;
}
address=Rsocket.getInetAddress().toString();
cport=Rsocket.getPort();
String toAKS=StringUtils.encrypt(KS,KA);
String toBKS=StringUtils.encrypt(KS,KB);
//String toAKA=StringUtils.encrypt(KA,KA);
String toAB=toAKS+";"+KA+";"+toBKS;
System.out.print("KS:"+KS+" address:"+address+" cport:"+cport);
send(toAB);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(Rsocket!=null)
try {
br.close();
isr.close();
is.close();
Rsocket.close();
//serverSocket.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
public void send(String data)
{
try {
Ssocket=new Socket("localhost",Sport);
OutputStream sos=Ssocket.getOutputStream();
sos.write(data.getBytes());
sos.close();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(Ssocket!=null)
try {
Ssocket.close();
//serverSocket.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
ServerSockets ss=new ServerSockets();
ss.serviec();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -