JavaWeb总结

JavaWeb

1、两种开发模型

C/SB/S
定义Client/Server,需要安装客户端Brower/Server,只需要安装浏览器
优点客户端响应速度快只要安装浏览器就可以访问,客户端零维护,易扩展
缺点系统升级麻烦,维护成本高

2、Tomcat服务器

​ 是一款开源小型的Web服务器,完全免费,主要用于中小型Web项目的开发,只支持Servlet和JSP等少量JavaEE规范。

目录结构

  • bin:该目录下存放的是二进制可执行文件;
  • conf:
    • server.xml::配置整个服务器信息。例如修改端口号,添加虚拟主机等;
    • context.xml:对所有应用的统一配置,通常我们不会去配置它;
    • web.xml:部署描述符文件,这个文件中注册了很多MIME类型,即文档类型;
    • tomcat-users.xml:存储tomcat用户的文件,这里保存的是tomcat的用户名及密码,以及用户的角色信息。
  • lib:Tomcat的类库,里面是一大堆jar文件。
  • logs:这个目录中都是日志文件,记录了Tomcat启动和关闭的信息,如果启动Tomcat时有错误,那么异常也会记录在日志文件中。
  • temp:存放Tomcat的临时文件,这个目录下的东西可以在停止Tomcat后删除!
  • webapps:存放web项目的目录,其中每个文件夹都是一个项目;
  • work:运行时生成的文件,最终运行的文件都在这里。

3、Servlet生命周期

Servlet是单例模式!!!

客户端第一次发送请求后,tomcat服务器解析请求,根据请求找到对应的Servlet,判断该类的对象是否存在,如果不存在,则创建Servlet实例,执行init()方法进行初始化操作,完成后执行service方法,判断用户的请求方式执行get或post方法,处理完成后返回相应的结果给客户端,单次请求结束。

当用户第二次发送请求后,会判断该对象是否存在,但是不会执行init方法,直接执行service方法,服务器关闭时执行destroy方法。

4、get与post区别

  • get请求的数据会附加在url后面,以?分割url与数据,以&分隔开每个数据,编码格式为ASCII码;post请求会将数据放置在请求包中。
  • 传输数据的大小:get大小为1024个字节;post可以用作文件上传。
  • 安全性:post安全性相对于get要高一些。

5、JSP(本质上是一个Servlet)

5.1、JSP与HTML的区别
  • JSP:动态⻚⾯(⻚⾯数据可以动态更新,⽀持嵌套java代码和html代码)
  • HTML:静态⻚⾯(包含固定的⻚⾯内容)
5.2、JSP中嵌套Java代码

小脚本:(<% java代码 %>)

5.3、JSP内置对象
  • request对象

request 对象是 javax.servlet.httpServletRequest类型的对象。该对象代表了客户端的请求信

息,主要⽤于接受通过HTTP协议传送到服务器的数据。(包括头信息、系统信息、请求⽅式以及请求参

数等)。request对象的作⽤域为⼀次请求。

  • response对象

response 代表的是对客户端的响应,主要是将JSP容器处理过的对象传回到客户端。response

对象也具有作⽤域,它只在JSP⻚⾯内有效。所属类型:HttpServletResponse

  • session对象

session 对象是由服务器⾃动创建的与⽤户请求相关的对象。服务器为每个⽤户都⽣成⼀个

session对象,⽤于保存该⽤户的信息,跟踪⽤户的操作状态。

  • application对象

application 对象可将信息保存在服务器中,直到服务器关闭,否则application对象中保存的信息

会在整个应⽤中都有效。

  • out对象

out 对象⽤于在Web浏览器内输出信息,并且管理应⽤服务器上的输出缓冲区。

  • pageContext对象

pageContext 对象的作⽤是取得任何范围的参数,通过它可以获取 JSP⻚⾯的out、

request、reponse、session、application 等对象。pageContext对象的创建和初始化都是由容器来完

成的,在JSP⻚⾯中可以直接使⽤ pageContext对象。

  • config对象

config 对象的主要作⽤是取得服务器的配置信息。

  • page对象

page 对象代表JSP本身,只有在JSP⻚⾯内才是合法的。 page隐含对象本质上包含当前 Servlet

接⼝引⽤的变量,类似于Java编程中的 this 指针。

  • exception对象

exception 对象的作⽤是显示异常信息,只有在包含 isErrorPage=“true” 的⻚⾯中才可以被使⽤,

在⼀般的JSP⻚⾯中使⽤该对象将⽆法编译JSP⽂件。

区别

request:单次请求

session:浏览器访问期间(会话期间)

application:服务器启动期间,所存的数据可以跨浏览器

5.4、JSP指令
  • page指令
<%@ page attribute="value" %>
  • Include指令
<%@ include file="⽂件相对 url 地址" %>
  • Taglib指令
<%@ taglib uri="uri" prefix="" %>

6、Session和Cookie的区别

  • Cookie通过在客户端记录信息确定⽤户身份

    Session通过在服务器端记录信息确定⽤户身份。

  • Session是由应⽤服务器维持的⼀个服务器端的存储空间,⽤户在连接服务器时,会由服务器⽣成⼀

    个唯⼀的SessionID,⽤该SessionID 为标识符来存取服务器端的Session存储空间。

  • Cookies是属于Session对象的⼀种。但有不同,Cookies不会占服务器资源,是存在客服端内存或者

    ⼀个Cookie的⽂本⽂件中;⽽Session则会占⽤服务器资源。

7、MVC设计模式

该设计模式不等同于Java23中设计模式!!!

M:(Model) 模型 应⽤程序的核⼼功能,管理这个模块中⽤的数据和值(bean,dao);

V:视图提供模型的展示,管理模型如何显示给⽤户,它是应⽤程序的外观;(jsp/html)

C:对⽤户的输⼊做出反应,管理⽤户和视图的交互,是连接模型和视图的枢纽。

8、Ajax

AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。

AJAX 不是新的编程语⾔,⽽是⼀种使⽤现有标准的新⽅法。

AJAX 是与服务器交换数据并更新部分⽹⻚的艺术,在不重新加载整个⻚⾯的情况下。

Ajax使用步骤:

  1. 创建XMLHttpRequest对象。
  2. 设置请求⽅式。
  3. 调⽤回调函数。
  4. 发送请求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值