JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)

common中的User类:
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)

JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
序列化就是可以让一个对象在网络或者文件中传输;
例如:用户信息;

JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
-------------
-客户端连接服务器
//把用户名和密码传递给服务器
用户点击登录:
连接QQ,启动QQ
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
//把User 信息传递给服务器-和服务器交互的类
QqClientUser登录验证
Server就像一个数据库一样
QqClientUser是一个业务逻辑;
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)

JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
服务器类似于数据库;

JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
QqClientConServer.java是专门负责和服务器发生交互的

JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)

发送的可能是一个对象:
public void SendInfoToServer(object  o)

//发送第一次请求
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
//发送
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
//

-----------------------
-Message.java
Message规定一些规则
mesType 1--->表明登录成功;
mesType 2--->表明登录失败;
mesType 3--->普通的消息包;
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
网络通信中有各种的消息;

JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)

//会返回一个boolean值交给
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)

JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)

JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)

JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
登录界面的用户名、密码User的验证

登录QqClientLogin,登录过后创建了一个ClientUser
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
它利用了一个ClientConServer的类,
把用户信息发出去了,验证,是否成功:
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
是成功还是不成功?
------------------------------
-服务器接收到了,得返回一个信息:
服务器读取对象流User
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
对象转成User;
拿到User,得去数据库去验证
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)

-QqServerUser连接数据库
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)

-com.qq.server.db
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)

JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)

JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
把m返回去;
oos.writeobject(m);
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
测试代码:
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)

服务器只监听一次,没有while循环
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
发错误的信息,再次点的话服务器就没有监听;
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
如果连接不成功,需要一直监听,
加上个while循环;错误,可以通过while循环一直监听;
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
JAVA入门到精通-第90讲-山寨QQ项目4-登录验证(1)
while循环,关闭连接,服务器重新监听;

第一次出错了,利用while循环监听,
可以再给他一次机会,再重新监听一次;