BS网络模式的运行原理及实现.ppt

BS网络模式的运行原理及实现.ppt

ID:56527384

大小:215.00 KB

页数:30页

时间:2020-06-27

BS网络模式的运行原理及实现.ppt_第1页
BS网络模式的运行原理及实现.ppt_第2页
BS网络模式的运行原理及实现.ppt_第3页
BS网络模式的运行原理及实现.ppt_第4页
BS网络模式的运行原理及实现.ppt_第5页
资源描述:

《BS网络模式的运行原理及实现.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、BS模式的工作原理及实现作者:李世明BS模式BS模式,即浏览器/服务器模式,是一种从传统的二层CS模式发展起来的新的网络结构模式,其本质是三层结构CS模式。BS模式的工作原理在B/S模式中,客户端运行浏览器软件。浏览器以超文本形式向Web服务器提出访问数据库的要求,Web服务器接受客户端请求后,将这个请求转化为SQL语法,并交给数据库服务器,数据库服务器得到请求后,验证其合法性,并进行数据处理,然后将处理后的结果返回给Web服务器,Web服务器再一次将得到的所有结果进行转化,变成HTML文档形式,转发给客户端浏览器以友好的Web页面形式显示出来。BS模式的工作原理BS模式

2、的工作原理使用到的技术Socket网络通信多线程IO流(文件操作)TCP协议TCP协议提供可靠的连接服务,采用三次握手建立一个连接。第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

3、图Scoket服务器ServerSocketserver=newServerSocket(4700);//创建一个ServerSocket在端口4700监听客户请求System.out.println("等待用户连接,处于阻塞状态。");Socketsocket=server.accept();//使用accept()阻塞等待客户请求,有客户//请求到来则产生一个Socket对象,并继续执行System.out.println("连接的IP:"+socket.getInetAddress().getHostAddress());服务器Scoket客户端Stringip="

4、localhost";Socketsocket=newSocket(ip,4700);IO流的使用获得输入流BufferedReaderin=newBufferedReader(newInputStreamReader(socket.getInputStream()));获得输出流PrintWriterout=newPrintWriter(socket.getOutputStream());out.close();//关闭Socket输出流in.close();//关闭Socket输入流socket.close();//关闭SocketIO流的使用发送out.printl

5、n("bye");out.flush();接收in.readLine()//注意此方法会处于阻塞状态,不接到数据就停在这等。案例-信息发送服务器功能:接收客户端发来的“数据”,打印到控制台。客户端做一个死循环,发送“数据”多线程一、操作系统中线程和进程的概念二、Java中的线程一、操作系统中线程和进程的概念现在的操作系统是多任务操作系统。多线程是实现多任务的一种方式。进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一个进程中可以启动多个线程。比如在Windows系统中,一个运行的exe就是一个进程。线程是指进程中的一个执行流程,一个进程中可以运行多个

6、线程。比如java.exe进程中可以运行很多线程。线程总是属于某个进程,进程中的多个线程共享进程的内存。“同时”执行是人的感觉,在线程之间实际上轮换执行。Java中的线程在Java中,“线程”指两件不同的事情:1、java.lang.Thread类的一个实例;2、线程的执行。继承java.lang.Thread类publicclassPersonextendsThread{//线程体publicvoidrun(){//在这里添加—代码System.out.println("线程开始。。");}}运行线程类:Personperson=newPerson();person.s

7、tart();案例-多线程publicclassPersonextendsThread{privateStringname;publicPerson(Stringname){this.name=name;}publicvoidrun(){inti=0;while(i<=100){System.out.println(name+"线程---"+i++);try{this.sleep(100);//休眠100毫秒}catch(InterruptedExceptione){e.printStackTrace();}}}//=====

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。