C/s架构:
        socket、serversocket、awt/swing做一个客户端软件
        建好socket连接后,通过IO流交换数据。数据格式由各个开发者自己确定,
B/C架构:
        浏览器也是一种客户端软件
        HTTP协议定义了浏览器和服务器通讯的基本规则之一
        
浏览器和服务器之间的交互:
    1、交互模式是:请求、响应。
    2、客户端先发出请求,服务器根据请求内容发送响应内容。
    
        客户端发出请求的格式应该是什么样的?
            a、首先服务器的地址、端口、资源地址。请求行
            b、请求头
            c、请求实体 (存放客户端的想要向服务器上传的数据)
            注:客户端向服务器传参,如果将参数放到请求行,即为get方式!如果将采参数放到请求实体中,即为post方式。
        
        服务器受到请求内容后发送响应内容:
            a、状态行(200、404、500)
            b、响应头
            c、响应实体
        服务器根据请求内容发送响应内容:
            a、如何收到请内容?
                1、建立监听。ServerSocket   s.accept()
                2、启动一个线程(轻量级的进程),为请求的客户提供服务
                3、为了封装客户端提供的请求信息,于是我定义一个对象:HttpServletRequest对象。
                4、根据请求行(URL)(为了封装回送给客户端 相应内容,我们定义了一个对象:HttpServletResponse对象)
            b、根据请求内容调用响应的程序(servlet)

     1、我们通过web.xml中定义的url和servlet的关系,找到相应的serlvet程序

     2、于是我们定义了HttoServlet

         service(HttpServiceRequest  req , HttpServiceResponse response)方法

     3、将response对象中的信息,转义成基于http协议的相应内容,再将这些响应内容通过socket传送         给客户端。
            c、向客户端发送响应内容

  为了统一处理上述流程,于是我们编写了一个程序,叫做Tomcat服务器。   我们也把服务器叫做web容      器,servlet容器

   下面要解决的问题就是怎么样使我们的Servlet程序,更加规范、更加强大?

  1、浏览器发给服务器的请求内容。HttpServletRequest对象

  2、服务器回送给浏览器的相应内容。HttpServletResponse对象

  3、servlet类读取web.xml中自己的配置信息。ServletConfig

  4、需要读取web.xml中的公共信息<contxt-param>。  ServletContext

  5、将所有的servlet放入一个容器中统一管理。ServletContext

  6、保存以前操作的状态。      客户端保存Cookie  服务器保存Session

  这时,我们发现servlet擅于做业务逻辑处理,但是不善于做页面展示的代码处理。于是我们队servlet进行了改进处理,jsp诞生了!!!   jsp也是servlet,也是java类。你访问一个jsp实际上是执行了对应的java类。我们需要一个统一的转义程序,可以将jsp文件内容转义成java类代码,于是产生了jsp引擎(一般服务器软件自带了这样的功能)。

  ajax----->异步模式。局部刷新效果。

    通过增加XMLHttpRequest对象,使用XHR对象发送请求,获得数据后,也是首先传给XHR对象,再通过    javascript代码操作dom模型,实现局部刷新效果。

3、客户端受到响应内容之后,该如何这些内容?
            a、首先HTML诞生了。<b>哈哈哈</b> <font color=red>五星红旗</font>
            b、希望HTML元素可以动起来,这样就诞生了javaScript(livescript)
            c、我们希望有个技术可以精确的、更加漂亮的控制页面元素的显示。于是CSS诞生了。

java web 大总结的更多相关文章

  1. Java Web大作业——编程导航系统

    title: Java Web大作业--编程导航系统 categories: - - 计算机科学 - Java abbrlink: 40bc48a1 date: 2021-12-29 00:37:35 ...

  2. 期末Java Web大作业----简易的学生管理系统

    学生信息管理系统(大作业) 2018-12-21:此文章已在我的网站更新,添加视图介绍等信息,源码请移步下载https://www.jeson.xin/javaweb-sims.html PS:首先不 ...

  3. java+web+大文件上传下载

    文件上传是最古老的互联网操作之一,20多年来几乎没有怎么变化,还是操作麻烦.缺乏交互.用户体验差. 一.前端代码 英国程序员Remy Sharp总结了这些新的接口 ,本文在他的基础之上,讨论在前端采用 ...

  4. java web 大文件下载

    泽优大文件下载产品测试 泽优大文件下载控件down2,基于php开发环境测试. 开发环境:HBuilder 服务器:wamp64 数据库:mysql 可视化数据库编辑工具:Navicat Premiu ...

  5. Java Web中的中文编码

    Java Web开发中经常会遇到中文编码问题,那么为什么需要编码呢?因为人类需要表示的符号太多,无法用1个字节来表示,而计算机中存储信息最小单元为1个字节.所以必须指定char与byte之间的编码规则 ...

  6. java web后台开发SSM框架(Spring+SpringMVC+MyBaitis)搭建与优化

    一.ssm框架搭建 1.1创建项目 新建项目后规划好各层的包. 1.2导入包 搭建SSM框架所需包百度云链接:http://pan.baidu.com/s/1cvKjL0 1.3整合spring与my ...

  7. Mac OS X上IntelliJ IDEA 13与Tomcat 8的Java Web开发环境搭建

    这标题实在有点拗口,不知道怎么写好,但看了标题也就明白文本的内容.最近几天在折腾这些玩意儿,所以写写总结.除了环境搭建,本文还是一篇入门级的上手教程. 去下载一些东西 JDK安装 Tomcat安装 T ...

  8. kpvalidate开辟验证组件,通用Java Web请求服务器端数据验证组件

    小菜利用工作之余编写了一款Java小插件,主要是用来验证Web请求的数据,是在服务器端进行验证,不是简单的浏览器端验证. 小菜编写的仅仅是一款非常初级的组件而已,但小菜为它写了详细的说明文档. 简单介 ...

  9. Java Web 学习路线

    实际上,如果时间安排合理的话,大概需要六个月左右,有些基础好,自学能力强的朋友,甚至在四个月左右就开始找工作了.大三的时候,我萌生了放弃本专业的念头,断断续续学 Java Web 累计一年半左右,总算 ...

随机推荐

  1. as3.0 在数组中找个找个,并且替换

    var arr:Array=[1,2,7,9,3,5,6]; var findNum:Number =5//想要找到的数字 var replaceNum:Object =3//想要替换的数字 var ...

  2. int 和 Integer 的区别

    1.两个New生成的Integer 永远不相等,因为他们的内存地址不相等 2.如果一个是New生成的Integer 另一个是通过赋值生成的话,如果值相等那么他们相等,因为这时Integer会通过自动拆 ...

  3. 第13届景驰-埃森哲杯广东工业大学ACM程序设计大赛----随手记录帖

    这是跟学长学姐组队来打的最爽的一次比赛了,也可能是互相组队最后一次比赛了,南哥和楼学姐,省赛之后就退役了,祝他们能考研和面试都有happy ending! 虽然最后没有把F题的n^2约数的数学题写完, ...

  4. TypeScript之定义类型 ( type )

    键值对结构的对象 export type ValidationErrors = { [key: string]: any }; 联合类型(union type) export type HttpEve ...

  5. [剑指Offer]12-矩阵中的路径(回溯)

    题目链接 https://www.nowcoder.com/practice/c61c6999eecb4b8f88a98f66b273a3cc?tpId=13&tqId=11218&t ...

  6. C++ 中的RTTI机制详解

    前言 RTTI是”Runtime Type Information”的缩写,意思是运行时类型信息,它提供了运行时确定对象类型的方法.RTTI并不是什么新的东西,很早就有了这个技术,但是,在实际应用中使 ...

  7. [z]分区truncate操作的介绍及对全局索引和空间释放影响的案例解析

    [z]https://www.2cto.com/database/201301/181226.html 环境: [sql] [oracle@localhost ~]$ uname -r 2.6.18- ...

  8. 4K - 找新朋友

    新年快到了,“猪头帮协会”准备搞一个聚会,已经知道现有会员N人,把会员从1到N编号,其中会长的号码是N号,凡是和会长是老朋友的,那么该会员的号码肯定和N有大于1的公约数,否则都是新朋友,现在会长想知道 ...

  9. nginx默认配置和默认站点启动

    1.nginx的配置文件nginx.conf cd /etc/nginx/ vim nginx.conf 打开后的文件为: user nginx;worker_processes 1; error_l ...

  10. HTML与XHTML的差别(转自)http://jingyan.baidu.com/article/597035521c31ed8fc007400a.html

    HTML与XHTML之间的差别,粗略可以分为两大类比较:一个是功能上的差别,另外是书写习惯的差别.关于功能上的差别,主要是XHTML可兼容各大浏览器.手机以及PDA,并且浏览器也能快速正确地编译网页. ...