TCP 登录实现代码
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();
}
}
}
版权声明:本文为博主原创文章,未经博主允许不得转载。
TCP 登录实现代码的更多相关文章
- 基于CSS3动态背景登录框代码
基于CSS3动态背景登录框代码.这是一款基于jQuery+CSS3实现的带有动画效果的动态背景登陆框特效.效果图如下: 在线预览 源码下载 实现的代码. html代码: <div class ...
- PHP简单登录退出代码
PHP简单登录退出代码 登录页面login.html 负责收集用户填写的登录信息. <html> <head> <title></title> < ...
- java-JDBC登录注册代码
登录: public static void main(String[] args) throws Exception{ Scanner sc = new Scanner(System.in); Sy ...
- C# WinForm登录窗口代码
Main窗体为应用程式主窗体,Login为登录窗体.均为SDI窗体. 两种实现方式如下: 1.应用程式入口放在Login窗体,在Login窗体实现登录机制,验证通过则创建Main窗体的实例,并 ...
- TCP服务器/客户端代码示例
TCP服务器代码: #include <errno.h> #include <string.h> #include <stdlib.h> #include < ...
- 基于RBAC权限验证, 中间价middleware实现, views 登录视图代码
废话不多说 上代码: 基础实现: rom django.shortcuts import HttpResponse, redirect, render from django.http import ...
- java请求登录接口代码示例
前言 近期研究如何利用java代码如何获取其他系统中所需的数据,自己总结的方法如下: 1.工具类代码 /** * <pre> * 方法体说明:向远程接口发起请求,返回字符串类型结果 * @ ...
- 原生ajax实现登录(一部分代码)
<script type="text/javascript"> function ajax() { //先声明一个异步请求对 ...
- PHP用户注册与登录完整代码【4】
login.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:// ...
随机推荐
- 嵌入式驱动开发之---Linux ALSA音频驱动(一)
本文的部分内容参考来自DroidPhone的博客(http://blog.csdn.net/droidphone/article/details/6271122),关于ALSA写得很不错的文章,只是少 ...
- 【C语言】一句printf代码——{ a[0] ? 0[a] }
这是前段时间做的http://fun.coolshell.cn/中的一道题,很有意思,涉及的其实是C的基础,不过当时第一次看见这行代码确实把我弄懵了: printf(&unix["\ ...
- ECMall验证码问题
一.确认问题: 输入下面这个地址:http://你的网址/index.php?app=captcha&876589486 打开后出现:mt_rand(): max(0) is smaller ...
- python 基础 1.5 python数据类型(三)--元组
一.python的数据类型 序列--元组 1.序列 1>字符串,列表,元组都是序列. 2>序列的两个特点是索引操作符和切片操作符 索引操作符:我们可以从序列中抓取一个特定项目 切片操作符: ...
- 怎么利用jquery.form 提交form
说明:开发环境 vs2012 asp.net mvc c# 利用jQuery.form.js提交form 1.HTML前端代码 <%@ Page Language="C#" ...
- sed命令使用举例
选择操作的行范围 sed -n '1,2p' testsed2.txt 匹配第1到2行 sed -n '/a/,/b/p' testsed2.txt 匹配从包含a的行到包含b的行 sed -n ' ...
- git修改commit说明
当发现说明写错了时,执行git commit --amend,然后修改说明即可.
- GIT / SVN 提交代码时, 注释该怎么写
大致可以分为 6 种 : 添加 修改 修复 --> 修正 优化 --> 改进 ;
- Java集合(一):Java集合概述
注:本文基于JDK 1.7 1 概述 Java提供了一个丰富的集合框架,这个集合框架包括了很多接口.虚拟类和实现类. 这些接口和类提供了丰富的功能.可以满足主要的聚合需求. 下图就是这个框架的总体结构 ...
- 微软Azure区块链开发工具包三大功能详解
2018年11月15日,微软宣布了Azure区块链开发工具包,它基于微软的无服务器技术构建,并且利用微软和第三方SaaS,完美集成了区块链.该工具包扩展了微软的区块链开发模板和Azure Blockc ...