web综合总结

web综合总结

CSS样式选择器包括什么

  • id选择器
  • class选择器
  • 子类选择器
  • 后代选择器
  • 元素选择器
  • 属性选择器
  • 伪类选择器

JSP中的四大作用域

  • page域
  • request域
  • session域
  • application域

get,post提交乱码的处理方式

  • get提交的乱码问题
    Tomcat8及以后不需要处理GET请求,默认是UTF-8编码!!!
    而之前,则需要:
    * 进行转码
    * 或者设置tomcat中conf/server.xml中的URL编码为UTF-8
Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>中添加
Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8"/>
  • post提交的乱码问题
    • request.setCharacterEncoding(“utf-8”)
    • 直接设置文字的utf编码为utf-8

tomcat服务器

一个tomcat服务器的启动大约占用内存量为半个g

Get和post区别

  • get请求用来从服务器上获得资源,而post是用来向服务器提交数据;
  • get将表单中数据按照name=value的形式,添加到action 所指向的URL 后面,并且两者使用"?“连接,而各个变量之间使用”&"连接;post是将表单中的数据放在HTTP协议的请求头或消息体中,传递到action所指向的URL;
  • get传输的数据要受到URL长度限制(1024字节);而post可以传输大量的数据, POST数据是没有限制的,上传文件通常要使用post方式;
  • 使用get时参数会显示在地址栏上,如果这些数据不是敏感数据,那么可以使用get;对于敏感数据还是应用使用post;
  • get使用MIME类型application/x-www-form-urlencoded的URL编码(也叫百分号编码)文本的格式传递参数,保证被传送的参数由遵循规范的文本组成,例如一个空格的编码是"%20".
  • Jsp页面中的FORM标签里的method属性为get时调用doGet(),为post时调用doPost().

什么是http协议

在客户端和服务端之间,或者说是浏览器和服务器之间的,基于TCP/IP的一种应用层通信协议.
http协议基于请求响应模型,每一次请求都对应一次响应,首先客户端发送一个请求(request)给服务端,服务端在接收到这个请求后生成一个响应(response)返回给客户端.
http是一种无状态的协议,他对事务处理没有记忆能力,而缺少状态也就意味着如果需要后续处理之前发送的信息,就需要重新传送.
服务端无法识别能够触发客户端请求的方法.

cookie和session区别

  • cookie:
    • cookie是客户端(浏览器)的技术
    • cookie的生命周期:通过setMaxAge()方法来设置
    • cookie安全性较低,存储在cookie中的数据可能会被他人分析从而进行cookie欺骗
    • cookie的数据存放在客户端上,不会占用服务端的性能,大量的数据适合存储在cookie中
    • cookie在请求中将数据保存在cookie中传输给服务器,最终同样在cookie中返回客户端
  • session:
    • session是服务端的技术
    • session的生命周期:
      • 当程序第一次调用request.getSession()方法时创建session对象,session对象在默认30分钟没有被调用后自动销毁;
      • session对象可以通过调用invalidate()方法自杀来销毁;
      • session对象在服务器未正常关闭时会随着web应用的销毁而销毁,如果服务器正常关闭则session对象会钝化,在下一次服务器启动时session会活化.
    • session安全性较高
    • session的数据存放在服务器上,过多的数据会影响服务端的性能,降低处理数据的能力
    • session将请求中的数据存在服务端的session对象中,最终将session的id作为cookie返回给客户端,再次请求时会将session的id传给服务端寻找请求对应的session

cookie和session有没有联系

肯定有,session是通过cookie来进行工作的

session的运行机制

  • 当我们第一次通过浏览器访问对应的服务器的时候,服务器端会创建一个Session_id(唯一),并将整个id通过响应的方式,保存在浏览器的cookie中
  • 当我们再次通过浏览器访问对应的服务器的时候,我们会根据对应cookie,在远程服务器进行一个校对,从而保证会话的一致性

提出问题:那么当cookie被禁用的时候,我们怎么对其进行session的使用呢?

当我们禁用cookie的时候,我们仍然可以使用url来携带对应的session_id来与远程服务器进行校对,从而保证session的一个机制,但是这样的访问时不安全,且不被我们所提倡的.
(由此可见,我们可以看到cookie和session的联系:session要基于cookie来实现其机制)

jsp

  • jsp:jsp只有在第一次被访问(或者jsp被修改后),才会被翻译成一个servlet
  • jsp和servlet的相同点和不同点:
    • 相同点:jsp经编译后变成了servlet(jsp的本质就是servlet)
    • 不同点:
      • jsp更擅长表现于页面显示,servelt更擅长于逻辑控制
      • servlet中没有内置对象,而jsp中的内置对象都是必须通过httpservletrequest,httpservletresponse,以及httpservlet对象得到
      • JSP侧重于视图,servlet主要用于控制逻辑

servlet的三大作用域

  • request
    • request是表示一个请求,只要发出一个请求就会创建一个request.
    • 它的作用域:仅在当前请求中有效.
    • 用处:常用于服务器间同一请求不同页面之间的参数传递,常应用于表单的控件值传递.
    • 方法:request.setAttribute(); request.getAttribute(); request.removeAttribute(); request.getParameter().
  • session
    • 服务器会为每个会话创建一个session对象,所以session中的数据可供当前会话中所有servlet共享.
    • 会话:用户打开浏览器会话开始,直到关闭浏览器会话才会结束.一次会话期间只会创建一个session对象.
    • 用处:常用于web开发中的登陆验证界面(当用户登录成功后浏览器分配其一个session键值对).
    • 方法:session.setAttribute(); session.getAttribute(); session.removeAttribute();
  • application
    • 作用范围:所有的用户都可以取得此信息,此信息在整个服务器上被保留.Application属性范围值,只要设置一次,则所有的网页窗口都可以取得数据.
    • ServletContext在服务器启动时创建,在服务器关闭时销毁,一个JavaWeb应用只创建一个ServletContext对象,所有的客户端在访问服务器时都共享同一个ServletContext对象;
    • ServletContext对象一般用于在多个客户端间共享数据时使用;

request和response是由谁创建的

servlet由服务器进行实例化
且在servlet的生命周期中的service方法前进行创建request和response
故request和response是由服务器端进行创建的

Ajax技术整理

网络编程:可以从js随意发送请求并获得服务器得到的响应
是最早谷歌在05年提出的一个方案
总结:AJAX就是浏览器提供的一套API

可以发出请求的方式:

  • 在地址栏输入地址
  • 特定元素的href或者是src属性
  • 表单提交

但是这些方案都是我们无法通过或者很难通过代码的方式进行编程(即对服务端发出请求并且接受服务端发送的响应)

  • 异步刷新,局部加载
  • 可以用于创建动态页面的技术

ajax实现原理:

  • 当用户发起请求时,将请求发给ajax引擎
  • 引擎告诉用户请等待
  • 由ajax引擎负责请求服务器,获取服务器的资源
  • ajax引擎获取服务器数据之后,将数据交给用户

服务器状态码

  • 200请求已成功
  • 301永久重定向 比较常用的场景是使用域名跳转
  • 302临时跳转 比如未登陆的用户访问用户中心重定向到登录页面 已缓存
  • 400客户端向服务器传递参数异常或语义有误
  • 404请求的资源的内容特性无法满足请求头中的条件,因而无法生成响应实体
  • 405当服务端设置只能进行post提交method=RequestMethod.POST和(网页栏中输入的数据GET提交)客户端之间的请求方式不匹配的时候(即服务端与客户端之间数据的提交方式不匹配的时候)
  • 406服务器返回数据参数异常
  • 500后台服务器异常
  • 502作为网关或者代理工作的服务器尝试执行请求时,从上游服务器接收到无效的响应.
  • 504作为网关或者代理工作的服务器尝试执行请求时,未能及时从上游服务器(URI标识出的服务器,例如HTTP、FTP、LDAP)或者辅助服务器(例如DNS)收到响应.

什么是盒子模型

F12时右下角的css盒子

TCP和UDP的区别

  • TCP是面向连接的,而UDP不需要建立连接,直接将应用程序传出去,故并不提供可靠性.故后者传输速度快
  • TCP是面向字节流的,UDP是面向数据报的
  • TCP保证数据的正确性,UDP可能会导致丢包
  • TCP保证数据顺序,而UDP不能保证

cookie如何实现共享

设置cookie的domain属性

UDP协议

Internet协议集支持一个无连接的传输协议,该协议称为用户数据报协议.UDP为应用程序提供了一种无需建立连接就可以发送封装IP数据报的方法.
Internet的传输层有两个主要协议,互为补充.
无连接的是UDP,
面向连接的是TCP,该协议几乎做了所有的事情

为什么要先呈现页面,后呈现数据,而不是页面和数据一起呈现

  • 数据加载通常是一个相对比较耗时操作,为了改善用户体验,可以先为用户呈现一个页面,数据加载时,显示数据正在加载中,数据加载完成以后再呈现数据.
  • 满足现阶段不同类型客户端需求
  • (将数据与页面的耦合程度极大的降低)

你知道网络协议到底有哪些吗?(几层)

通过OSI网络模型    7层                                                                     
  • 应用层HTTP,FTP
  • 表示层
  • 会话层
  • 传输层TCP,UDP
    前者需要经过三次握手,后者不需要
  • 网络层
  • 数据链路层
  • 物理层

伪静态

原本可以使用.jsp来完成动态页面技术,那么为什么还是以html结尾呢?
答:为了增强搜索引擎对页面的曝光率,但如果使用html文件,那么就丧失了对动态页面友好的支持
(搜索引擎一般只收录静态页面)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值