TCP 登录实现代码
2024-09-29 16:34:07
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
/**
* 登录服务器
* @author Administrator
*
*/
public class LoginServerDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
int port = 20000;
try {
ServerSocket ss = new ServerSocket(port);
System.out.println("服务器已启动");
Socket socket = ss.accept();
System.out.println("有客户连接进来");
InputStream in = socket.getInputStream();
BufferedReader br =
new BufferedReader(new InputStreamReader(in));
OutputStream out = socket.getOutputStream();
PrintWriter pw = new PrintWriter(out);
String str = null;
String name = "";
String pwd = "";
while( (str = br.readLine()) != null ){
String tag = str.split(":")[0];
if(tag.equals("name")){
name = str.split(":")[1];
}else if(tag.equals("pwd")){
pwd = str.split(":")[1];
}
if((!name.equals(""))&&(!pwd.equals(""))){
//进行登录判断
if(name.equals("zhangsan") && pwd.equals("123456")){
pw.println("true");
}else{
pw.println("false");
}
pw.flush();
break;
}
}
socket.close();//关闭连接
ss.close();//关闭服务器
System.out.println("服务器已关闭");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.ObjectInputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class LoginObjectServerDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
int port = 20000;
try {
ServerSocket ss = new ServerSocket(port);
System.out.println("服务器已启动");
Socket socket = ss.accept();
System.out.println("有客户连接进来");
InputStream in = socket.getInputStream();
ObjectInputStream oin = new ObjectInputStream(in);
OutputStream out = socket.getOutputStream();
PrintWriter pw = new PrintWriter(out);
String str = null;
String name = "zhangsan";
String pwd = "123456";
//接收客户端登录消息
Object obj = null;
if((obj = oin.readObject())!= null){
UserInfo ui = (UserInfo)obj;
if(name.equals(ui.getUsername())&&pwd.equals(ui.getPassword())){
pw.println("true");
}else{
pw.println("false");
}
pw.flush();
}
socket.close();//关闭连接
ss.close();//关闭服务器
System.out.println("服务器已关闭");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
版权声明:本文为博主原创文章,未经博主允许不得转载。
最新文章
- C#语言之“中英文混合字符串对齐”的方法
- EditText的一些属性及用法
- 2004FBI树
- JSP九个内置对象
- XSS 前端防火墙(2):可疑模块拦截
- tlplayer,wzplayer支持wince,winphone,windows8 for arm
- 基于机器学习的web异常检测
- spring之注解
- 》》webpack打包成的文件
- vw, vh视区覆盖和自适应图片
- git常用命令以及如何与fork别人的仓库保持同步
- Nginx+Tomcat+Memcached部署
- c#之枚举,结构体
- shell作业控制(后台前台命令)
- linux 3.10 的中断收包笔记
- redis下载地址
- 【Unity】8.5 扩展编辑器
- 友好的KVO
- [JAVA] JAVA JDK 安装配置
- 一些有趣的 Shell 命令
热门文章
- 特权级概述(哥子就想知道CPU是如何验证特权级的)GATE+TSS
- Python学习总结之四 -- 这就是Python的字典
- 初识python轻量web框架flask
- 帝国CMS万能标签ecmsinfo介绍
- 关于js全局变量数组push数据时dom中无数据的问题
- adjA=(detA)A-1
- iOS 流布局 UICollectionView使用(UICollectionVIew的代理方法)
- Spring 简单描述
- Ruby 文件 FILE
- Exception of type 'System.OutOfMemoryException' was thrown