TCP
java
package Sever;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class PictureSever {
public static void main(String[] args) throws IOException {
ServerSocket serverSocket=new ServerSocket(10086);
Socket socket=serverSocket.accept();
InputStream inputStream=socket.getInputStream();
FileOutputStream fileOutputStream=new FileOutputStream("fj.jpg");
int temp=0;
while ((temp=inputStream.read())!=-1){
fileOutputStream.write(temp);
}
socket.shutdownInput();
OutputStream outputStream=socket.getOutputStream();
outputStream.write("上传成功".getBytes());
socket.shutdownOutput();
outputStream.close();
fileOutputStream.close();
inputStream.close();
socket.close();
serverSocket.close();
}
}
java
package Cilent;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
public class PictureCilent {
public static void main(String[] args) throws Exception {
FileInputStream fileInputStream=new FileInputStream("1.jpg");
Socket socket=new Socket("127.0.0.1",10086);
OutputStream outputStream=socket.getOutputStream();
int temp=0;
while((temp=fileInputStream.read())!=-1){
outputStream.write(temp);
}
socket.shutdownOutput();
InputStream inputStream=socket.getInputStream();
byte [] bytes=new byte[1024];
int length = inputStream.read(bytes);
System.out.println(new String(bytes,0,length));
socket.shutdownInput();
outputStream.close();
socket.close();
fileInputStream.close();
}
}
基于TCP的用户登录实现
java
package Cilent;
import java.io.*;
import java.net.Socket;
import java.util.Scanner;
import java.util.SimpleTimeZone;
public class LoginCilent {
public static void main(String[] args) throws IOException {
Socket socket = new Socket("127.0.0.1", 10000);
Users users = getUser();
OutputStream outputStream = socket.getOutputStream();
ObjectOutputStream objectOutputStream = new ObjectOutputStream(outputStream);
objectOutputStream.writeObject(users);
socket.shutdownOutput();
DataInputStream dataintputStream = new DataInputStream(socket.getInputStream());
String str = dataintputStream.readUTF();
System.out.println(str);
dataintputStream.close();
objectOutputStream.close();
outputStream.close();
socket.close();
}
public static Users getUser() {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入用户名:");
String username = scanner.nextLine();
System.out.println("请输入密码:");
String password = scanner.nextLine();
return new Users(username, password);
}
}
java
package Sever;
import Cilent.Users;
import java.io.*;
import java.net.ServerSocket;
import java.net.Socket;
public class LoginSever {
public static void main(String[] args) throws Exception {
ServerSocket serverSocket=new ServerSocket(10000);
while (true){
Socket socket=serverSocket.accept();
InputStream inputStream=socket.getInputStream();
ObjectInputStream objectInputStream=new ObjectInputStream(inputStream);
Users users=(Users) objectInputStream.readObject();
String str="";
if("msb".equals(users.getUsename())&&"msb".equals(users.getPassword())){
str="登录成功";
System.out.println("欢迎你"+users.getUsename() );
}else {
str="登录失败";
}
socket.shutdownInput();
DataOutputStream dataOutputStream=new DataOutputStream(socket.getOutputStream());
dataOutputStream.writeUTF(str);
socket.shutdownOutput();
dataOutputStream.close();
objectInputStream.close();
inputStream.close();
socket.close();
// serverSocket.close();
}
// DataInputStream dataInputStream=new DataInputStream(inputStream);
// dataInputStream.readUTF();
}
}
java
package Sever;
import Cilent.Users;
import java.io.DataOutputStream;
import java.io.InputStream;
import java.io.ObjectInputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class LoginSever1 {
public static void main(String[] args) throws Exception {
ServerSocket serverSocket=new ServerSocket(10000);
while (true){
Socket socket=serverSocket.accept();
LoginThread loginThread=new LoginThread(socket);
Thread thread=new Thread(loginThread);
thread.start();
// InputStream inputStream=socket.getInputStream();
// ObjectInputStream objectInputStream=new ObjectInputStream(inputStream);
// Users users=(Users) objectInputStream.readObject();
// String str="";
// if("msb".equals(users.getUsename())&&"msb".equals(users.getPassword())){
// str="登录成功";
// System.out.println("欢迎你"+users.getUsename() );
// }else {
// str="登录失败";
// }
// socket.shutdownInput();
// DataOutputStream dataOutputStream=new DataOutputStream(socket.getOutputStream());
// dataOutputStream.writeUTF(str);
// socket.shutdownOutput();
// dataOutputStream.close();
// objectInputStream.close();
// inputStream.close();
// socket.close();
// serverSocket.close();
}
// DataInputStream dataInputStream=new DataInputStream(inputStream);
// dataInputStream.readUTF();
}
}
java
package Sever;
import Cilent.Users;
import java.io.*;
import java.net.Socket;
public class LoginThread implements Runnable{
private Socket socket;
public LoginThread(Socket socket){
this.socket=socket;
}
@Override
public void run() {
ObjectInputStream objectInputStream=null;
DataOutputStream dataOutputStream=null;
try {
objectInputStream=new ObjectInputStream(socket.getInputStream());
Users users=(Users) objectInputStream.readObject();
String str="";
if("msb".equals(users.getUsename())&&"msb".equals(users.getPassword())){
str="登录成功";
System.out.println("恭喜你"+users.getUsename());
}else {
str="登录失败";
}
socket.shutdownInput();
dataOutputStream=new DataOutputStream(socket.getOutputStream());
dataOutputStream.writeUTF(str);
socket.shutdownOutput();
} catch (IOException e) {
throw new RuntimeException(e);
} catch (ClassNotFoundException e) {
throw new RuntimeException(e);
}finally {
try {
objectInputStream.close();
dataOutputStream.close();
socket.close();
} catch (IOException e) {
throw new RuntimeException(e);
}
}
}
}
udp