0
点赞
收藏
分享

微信扫一扫

Java Web从入门到实践

静守幸福 2022-04-05 阅读 186

Java Web从入门到实践

1. 基本概念

1.1 前言

web开发:

  • web 网页
  • 静态web html、css 提供给所有人看的数据,始终不会发生变化
  • 动态web 提供给所有人看的数据,会发生变化 每个人在不同时间 不同地点看到的信息不同 技术栈:Servlet/JSP/ ASP

在Java中,动态web资源开发技术统称为Java Web

1.2 web应用程序

可以提供浏览器访问的程序

  • a.html、b.html…多个web资源,这些web资源可以被外界访问,对外界提供服务
  • URL
  • 这些所有的web资源都会被放在同一个文件夹下,web应用程序->Tomcat服务器
  • 一个web应用由多部分组成
    • html、css、js
    • jsp、servlet
    • java程序
    • jar包
    • 配置文件

web应用程序编写完毕后,若想提供给外界访问,需要一个服务器统一管理

1.3 静态web

  • *.html 如果服务器上存在这些东西,就可以直接读取
  • 存在缺点:1.web页面无法动态更新,所有用户看到的都是同一个页面 2.无法和数据库交互
    在这里插入图片描述

1.4 动态web

页面会动态展示
在这里插入图片描述

缺点:假如服务器动态资源出现错误,就需要重新编写后台程序
优点:1.可以动态更新,所有用户看到的都不是同一个页面 2.可以于数据库交互(数据持久化)

2. web服务器

ASP:微软 在html中嵌入了VB的脚本
JSP/Servlet:SUN公司主推的B/S架构,基于JAVA语言的 可以承载三高问题
PHP:开发速度快,功能强大,跨平台,代码简单 但是无法承载大访问量

服务器是一种被动操作,用来处理用户的一些请求和给用户一些响应信息
IIS:微软的 ASP程序 windows自带
Tomcat:运行JSP和Servlet

3. Tomcat

3.1 安装Tomcat

1.访问官网

2.选择相应版本
在这里插入图片描述

3.下载压缩包 解压

3.2 Tomcat启动

文件夹内容:
在这里插入图片描述

启动Tomcat
打开startup.bat文件,可以访问http://localhost:8080/
打开shutdown.bat文件,关闭

3.3 Tomcat配置

核心配置文件:
在这里插入图片描述

可以配置启动的主机:默认主机为localhost->127.0.0.1 默认存放网站的位置为webapps

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

配置启动的端口号:默认为8080

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

高难度面试题
请你谈谈网站是如何进行访问的?
1.输入一个域名,点击回车
2.检查本机的C:\Windows\System32\drivers\etc\hosts配置文件下有没有这个域名的映射
3.如果有,直接返回对应的IP地址 没有的话去DNS(管理全部的域名)服务器上找

3.5 发布一个web网站

将自己的网站放到服务器(Tomcat)指定的web应用的文件夹(webapps)下
使用http://localhost:8080/manager就可以访问具体的
在这里插入图片描述

4. Http

4.1什么是Http

超文本传输协议是一个简单的请求和相应协议,通常运行在TCP上。
超文本:图片、音乐、视频…
端口:80
Https:端口:443 安全的

4.2 两个时代

http1.0

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

4.3 Http请求

客户端->发请求->服务器
以请求百度为例:

Request URL:https://www.baidu.com/?tn=48021271_8_hao_pg //请求地址
Request Method:GET  //请求方法 get/post
Status Code:200 OK   // 状态码 200
Remote Address:182.61.200.7:443 //远程地址
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、HEAD、DELETE、PUT…
    • get:请求携带的参数较少,大小会限制,会在URL中显示内容,不安全但高效
    • post:请求携带的参数无限制,不会在URL中显示内容,安全但不高效

消息头

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

4.4 Http响应

服务器->响应->客户端
以百度响应为例:

Cache-Control:private   //缓存控制
Connection:keep-alive  //连接  
Content-Encoding:gzip //编码
Content-Type:text/html;charset=utf-8 //类型

响应体

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

响应状态码
200:响应成功 200
3××:重定向
4××:资源不存在 404
5××:服务器代码错误 500 502(网关错误)

5. Maven

在JavaWeb开发中,需要使用大量的jar包,需要手动导入

5.1 Maven项目架构管理工具

用来方便导入jar包
核心思想:约定>配置
Maven会规定如何编写Java代码

5.2 下载安装Maven

官网:>https://maven.apache.org/
在这里插入图片描述

下载完后解压

5.3 配置环境变量

配置如下:

  • 1.在环境变量中添加 M2_HOME 变量值为maven目录下的bin目录

  • 2.在环境变量中添加 MAVEN_HOME 变量值为maven的主目录
    在这里插入图片描述

  • 3.在path中添加 %MAVEN_HOME%\bin
    在这里插入图片描述

  • 4.测试 在cmd中 mvn -version
    在这里插入图片描述

5.4 阿里云镜像

  • 镜像(mirrors):加速下载
<mirror>    
    <id>alimaven</id>    
    <mirrorOf>*</mirrorOf>    
    <name>aliyun maven</name>    
    <url>https://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>

在这里插入图片描述

5.5 本地仓库

在这里插入图片描述

举报

相关推荐

0 条评论