JAVAweb复习简略版Day30+31

1、基本概念

1.1web开发

1.1.1静态web

html,css,js
在这里插入图片描述

无法与数据库进行交互

1.1.2动态web

每个人在不同时间不同地点看到的信息不同
技术栈:Servlet/JSP, ASP, PHP
优点:可以动态更新,所有用户看到的都不是同一个页面
它可以与数据库进行交互
在这里插入图片描述

1.2Web应用程序

Web应用程序:可以提供浏览器访问的程序
所访问到的任何一个页面或者资源,都存在于世界的某一个角落的计算机上
URL:
这个同一的web资源会被放在同一个文件夹下,web应用程序——>Tomcat:服务器
一个web应用由多部分组成(静态和动态)

2、web服务器

2.1技术讲解

ASP:
微软:国内最早流行的就是ASP
HTML中嵌入了VB脚本,ASP+COM
在ASP开发中,基本一个页面就是几千行,代码混乱
维护成本高

PHP:
开发速度很快,跨平台,功能很强大
无法承载大访问量的情况

JSP/Servlet:
B/S:浏览和服务器
C/S:客户端和服务器
基于JAVA语言的
可以承载高并发,高性能,高可用

2.2web服务器

服务器是一种被动的操作,用来处理用户的一些请求和给用户一些响应信息
IIS
微软的:ASP…Windows中自带的

Tomcat
实际运行JSP和Servlet

3、Tomcat

3.1安装tomcat

3.2tomcat配置和启动

3.3配置

JAVA环境变量没有配置
闪退问题:需要配置兼容性
乱码问题:配置文件中设置
在这里插入图片描述
服务器核心配置文件
在这里插入图片描述
apache-tomcat-9.0.52\conf\server.xml是核心配置文件

可以配置启动的端口号
tomcat的默认端口号为8080
mysql:3306
http:80

  <Connector executor="tomcatThreadPool"
               port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

可以配置主机的名称
默认的主机名为:localhost
默认网站应用存放的位置为:webapps

<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">

网站如何进行访问:
1、输入一个域名:回车
2、检查本机的C:\Windows\System32\drivers\etc\hosts配置下有没有这个域名映射
如果有:直接返回对应的IP地址
如果没有则去DNS(全世界域名管理)
在这里插入图片描述

可以配置环境变量

3.4发布一个网站JSP已学完

4、HTTP

4.1什么是HTTP(计网)

4.2两个时代

HTTP1.0
HTTP/1.0:客户端与web服务器连接,只能获得一个web资源,断开连接
HTTP2.0
HTTP/1.1:客户端与web服务器连接,可以获得多个web资源

4.3HTTP请求

客户端——发请求——服务器
百度

Request URL: https://www.baidu.com/     请求地址
Request Method: GET    get方法/post方法
Status Code: 200 OK     状态码:200
Remote Address: 220.181.38.150:443   远程地址
Referrer Policy: strict-origin-when-cross-origin
Accept: text/html   
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9  
Cache-Control: max-age=0
Connection: keep-alive

请求行:
请求行中的请求方式:GET
请求方式:GET,POST…
get:请求能够携带的参数比较少,大小有限制,会在浏览器的URL地址栏显示数据内容,不安全,但是高效
post:请求能够携带的参数比较多,大小无限制,不会在浏览器的URL地址栏显示数据内容,安全
消息头:

Accept:告诉浏览器,它所支持的数据类型
Accept-Encoding: 支持那种编码格式
Accept-Language: 告诉浏览器它的语言环境
Cache-Control:缓存控制
Connection:告诉浏览器,请求完成是断开还是保持连接

4.4HTTP响应


Connection: keep-alive   连接
Content-Encoding: gzip  编码
Content-Type: text/html; charset=utf-8  类型

响应体

Accept:告诉浏览器,它所支持的数据类型
Accept-Encoding: 支持那种编码格式
Accept-Language: 告诉浏览器它的语言环境
Cache-Control:缓存控制
Connection:告诉浏览器,请求完成是断开还是保持连接
Location:让网页重新定位
Refresh:告诉客户端,多久刷新一次

响应状态码(软件测试接触过)
200:请求响应成功
3xx:请求重定向
4xx:找不到资源
5xx:服务器代码错误

5、Maven

在JAVA中需要大量的jar包,大都是手动配置
而Maven能够自动帮助导入jar包

5.1Maven项目架构管理工具

核心思想:约定大于配置
maven会规定号如何写JAVA代码

5.2下载

5.3Maven环境配置

5.4阿里云镜像:

加速加载

<mirror>
     <id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
    </mirror>>

5.5本地仓库

5.6IDEA使用

在这里插入图片描述

5.7IDEA中创建一个普通的项目

在这里插入图片描述

web应用下才会有
在这里插入图片描述
在这里插入图片描述


在这里插入图片描述

5.8IDEA中配置Ttomcat

在这里插入图片描述
在这里插入图片描述
当访问一个网站时,需要指定一个文件夹的名字
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6、Servlet

6.1Servlet简介

是sun公司开发动态web的技术
sun在API中提供一个接口叫Servlet,若想开发一个Servlet程序,只需要完成两个步骤。
编写一个类,实现Servlet接口,把开发好的JAVA部署到web服务器中

6.2Servlet原理

Servlet是由web服务器调用,web服务器在收到浏览器请求之后,会:
在这里插入图片描述

在这里插入图片描述

6.3Mapping问题

1、一个Servlet请求可以指定一个映射路径

<servlet-mapping>
		<servlet-name>hello</servlet-name>
		<url-pattern>/hello</url-pattern>
	</servlet-mapping>

2、一个Servlet请求可以指定多个映射路径

<servlet-mapping>
		<servlet-name>hello</servlet-name>
		<url-pattern>/hello1</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>hello</servlet-name>
		<url-pattern>/hello2</url-pattern>
	</servlet-mapping>
	<servlet-mapping>
		<servlet-name>hello</servlet-name>
		<url-pattern>/hello3</url-pattern>
	</servlet-mapping>

3、一个Servlet请求可以指定通用映射路径

<servlet-mapping>
		<servlet-name>hello</servlet-name>
		<url-pattern>/hello/*</url-pattern>
	</servlet-mapping>

4、可以自定义后缀实现请求映射

*.dan
*前面不能加项目映射的路径
<servlet-mapping>
		<servlet-name>hello</servlet-name>
		<url-pattern>*.dan</url-pattern>
	</servlet-mapping>

5、优先级问题
指定了固有的映射路径优先级最高,如果找不到就会走默认的处理请求

6.4servletContext

web容器在启动的时候,会为每个web程序创建一个对应的ServletContext对象,代表了当前的web应用
共享数据:
在这个Servlet中保存的数据,可以在另外一个servlet中拿到

获取初始化参数

<context-param>
		<param-name>url</param-name>
		<param-value>jdbc:mysql://localhost:3306/mybatis</param-value>
	</context-param>

请求转发
转发的图
在这里插入图片描述
重定向
在这里插入图片描述
读取资源文件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值