java找工作之JavaWeb(一)

JavaWeb

一个web应用有多部份组成(静态web,动态web)

  • html,css,js
  • jsp,servlet
  • java程序
  • jar包
  • 配置文件(Properties)

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

1、基本概念
1.1静态web
  • .html是网页后缀,只要一个网页后面是这个后缀,就可以直接访问

服务器中包含web Srevice服务和静态页面存储,客户端向服务器发送请求,web Service在静态页面存储中寻找是否存在客户端所请求的页面,如果存在则由web Service返回客户端。

  • 静态页面的缺点
    • web页面无法动态更新,所有用户看到的都是同一个页面
      • 轮播图,点击特效,伪动态
      • javaScript
    • 无法和数据库交互,数据无法持久化,用户无法交互

#####1.2动态web

页面会动态展示,web页面展示的效果因人而异。

服务器包含WebServer Plugin,客户端向服务器发送请求,WebServer Plugin既访问静态资源又访问动态资源,静态资源通过webServer访问,同静态资源一样,访问到的动态资源返回到webServer,由webServer结合静态资源与动态资源形成一个最终页面再响应给客户端。

  • 动态页面的缺点

    但是加入服务器的动态web资源出现了错误,我们需要重新编写我们的后台程序,重新发布。

  • 优点

    • 每个用户看到的页面不一样

    • 可以连接数据库,数据持久化

2、web服务器
2.1技术讲解

ASP:

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

PHP:

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

JSP/Servlet:

  • sun公司主推的B/S架构
  • 基于java语言的
  • 可以承载三高(高并发,高可用,高性能)带来的影响
  • 语法像ASP
2.2web服务器

服务器是一种被动的操作,用来处理用户的请求和用户的响应信息

IIS

微软的;ASP,Windows自带的

Tomcat

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选 。

下载tomcat:

1.安装或者解压

2.了解配置文件和目录结构

3.这个东西的作用

3.Tomcat
3.1文件夹作用

在这里插入图片描述

3.2网站是如何进行访问的

1.输入一个域名:回车

2.检查本机的C:\Windows\System32\drivers\etc\hosts配置文件下有没有这个域名映射

  • 有:直接返回对应的IP地址,这个地址中由我们需要访问的web程序,可以直接访问
  • 没有:去DNS服务器查找
3.3发布一个web网站
  • 将自己写的网站放到服务器(Tomcat)中指定的web应用的文件夹(webapps)下,就可以访问了

  • 网站应该有的结构

    --webapps:Tomcat的web目录-ROOT-study:所写网站的目录名-WEB-INF-classes:java程序-lib:web应用所依赖的jar包-web.xml:网站配置文件-index.html:默认的首页-static-css-style.cdd-js-img-...
    
4.HTTP
4.1什么是HTTP

HTTP(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP上,默认端口是80。

HTTPS是一种透过计算机网络进行安全通信的传输协议 ,默认端口是443。

4.2HTTP请求

客户端–发请求–服务器

请求 URL:https://www.baidu.com/   请求地址
请求方法:GET
Status Code:200 OK   状态码:200
远程地址:[2409:8c00:6c21:104f:0:ff:b03f:3ae]:443
Referrer Policy:origin-when-cross-origin

请求行

  • 请求行中的请求方式:GET
  • 请求方式:Get,Post
    • get:请求能够携带的参数比较少,大小有限制,会在浏览器的URL地址栏显示数据内容,不安全,但高效
    • post:请求能够携带的参数没有限制,不会在浏览器的URL地址显示数据内容,安全,但不高效

消息头

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

服务器–响应–客户端

Cache-Control:private 缓存控制
Connection:Keep-Alive 连接
Content-Encoding:gzip 编码
Content-Type:text/html 类型

响应体

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

响应状态码

200:请求成功

3**:请求重定向

  • 重定向:重新到浏览器所给的新位置

4**:找不到资源 404

  • 资源不存在

5**:服务器代码错误 500

502:网关错误

ection:告诉浏览器请求完成是断开还是保持连接
HOST:主机
Refresh:好俗客户,多久更新一次
Location:让网页重新定位


**响应状态码**200:请求成功3**:请求重定向- 重定向:重新到浏览器所给的新位置4**:找不到资源 404- 资源不存在5**:服务器代码错误 500502:网关错误

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2822087.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

3694-51-7,3,5-Dinitro-1,2-phenylenediamine,合成其他化合物的重要中间体

您好,欢迎来到新研之家 文章关键词:3694-51-7,3,5-Dinitro-1,2-phenylenediamine,3,5-二硝基-1,2-苯二胺;3,5-二硝基苯-1,2-二胺 一、基本信息 【产品简介】:3,5-Dinitro-1,2-phenylenediamine, with the molecular…

一台工控机的能量

使用Docker搭建EPICS的IOC记录 Zstack EPICS Archiver在小课题组的使用经验 以前电子枪调试,用一台工控机跑起束测后台,这次新光源用的电子枪加工回来又是测试,又是用一台工控机做起重复的事,不过生命在于折腾,重复的…

openGauss学习笔记-232 openGauss性能调优-系统调优-资源负载管理-资源管理准备-资源规划

文章目录 openGauss学习笔记-232 openGauss性能调优-系统调优-资源负载管理-资源管理准备-资源规划 openGauss学习笔记-232 openGauss性能调优-系统调优-资源负载管理-资源管理准备-资源规划 完成资源负载管理功能配置前,需要先根据业务模型完成租户资源的规划。业…

【白嫖8k买的机构vip教程】Appium自动化(3):Appium-Desktop界面介绍

Appium-Desktop主界面包含三个菜单Simple、Advanced、Presets Simple界面: Host设置Appium server的ip地址,本地调试可以将ip地址修改为127.0.0.1;Port设置端口号,默认是4723不用修改Start Server 启动 Appium serverEdit Confi…

[SUCTF 2019]EasyWeb --不会编程的崽

个人认为&#xff0c;这题还算有些东西。先来看源码 <?php function get_the_flag(){// webadmin will remove your upload file every 20 min!!!! $userdir "upload/tmp_".md5($_SERVER[REMOTE_ADDR]);if(!file_exists($userdir)){mkdir($userdir);}if(!empty…

【力扣白嫖日记】550.游戏玩法分析IV

前言 练习sql语句&#xff0c;所有题目来自于力扣&#xff08;https://leetcode.cn/problemset/database/&#xff09;的免费数据库练习题。 今日题目&#xff1a; 550.游戏玩法分析IV 表&#xff1a;Activity 列名类型player_idintdevice_idintevent_datedategames_played…

leetcode--接雨水(双指针法,动态规划,单调栈)

目录 方法一&#xff1a;双指针法 方法二&#xff1a;动态规划 方法三&#xff1a;单调栈 42. 接雨水 - 力扣&#xff08;LeetCode&#xff09; 黑色的是柱子&#xff0c;蓝色的是雨水&#xff0c;我们先来观察一下雨水的分布情况: 雨水落在凹槽之间&#xff0c;在一个凹槽的…

第三百七十五回

文章目录 1. 概念介绍2. 使用方法3. 代码与效果3.1 示例代码3.2 运行效果 4. 内容总结 我们在上一章回中介绍了"分享三个使用TextField的细节"相关的内容&#xff0c;本章回中将介绍如何让Text组件中的文字自动换行.闲话休提&#xff0c;让我们一起Talk Flutter吧。 …

《C++进阶--10.多态》

目录 10. 多态 10.1 多态的基本概念 10.2 多态案例一-计算器类 10.3 纯虚函数和抽象类 10.4 多态案例二-制作饮品 10.5 虚析构和纯虚析构 10.6 多态案例三-电脑组装 10. 多态 10.1 多态的基本概念 多态是C面向对象三大特性之一 多态分为两类 静态多态: 函数重载 和 运算…

HTML---Ajax

文章目录 目录 文章目录 前言 一.Ajax概述 二.原生创建Ajax 三,使用Jquery处理Ajax 总结 一.Ajax概述 AJAX&#xff08;Asynchronous Javascript And XML&#xff09;是一种创建交互式网页应用的网页开发技术。它使用Javascript语言与服务器进行异步交互&#xff0c;可以传…

matplotlib.animation 3d姿态动画

目录 演示效果&#xff1a; 演示代码&#xff1a; 保存为gif 演示效果&#xff1a; 演示代码&#xff1a; import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D from matplotlib.animation import FuncAnimation# 定义人体关键点…

flutterandroidx支持,【工作经验分享】

基于Linux的pc启动过程 我们都知道&#xff0c;所有的程序软件包括操作系统都是运行在内存中的&#xff0c;然而我们的操作系统一般是存放在硬盘上的&#xff0c;当我们按下开机键的时候&#xff0c;此时内存中什么程序也没有&#xff0c;因此需要借助某种方式&#xff0c;将操…

kubectl 陈述式资源管理方法

目录 陈述式资源管理方法 项目的生命周期 1.创建kubectl create命令 2.发布kubectl expose命令 service的4的基本类型 查看pod网络状态详细信息和 Service暴露的端口 查看关联后端的节点 ​编辑 查看 service 的描述信息 ​编辑在 node01 节点上操作&#xff0c;查看…

Northwestern University-844计算机科学与技术/软件工程-复试注意事项【考研复习】

本文提到的西北大学是位于密歇根湖泊畔的西北大学。西北大学&#xff08;英语&#xff1a;Northwestern University&#xff0c;简称&#xff1a;NU&#xff09;是美国的一所著名私立研究型大学。它由九人于1851年创立&#xff0c;目标是建立一所为西北领地地区的人服务的大学。…

Android13 Audio框架

一、Android 13音频代码结构 1、framework: android/frameworks/base 1.AudioManager.java &#xff1a;音频管理器&#xff0c;音量调节、音量UI、设置和获取参数等控制流的对外API 2.AudioService.java &#xff1a;音频系统服务&#xff08;java层&#xff09;&#xff0c…

在vue2中使用饼状图

1.引入vue2和echarts <script src"https://cdn.jsdelivr.net/npm/vue2.7.14/dist/vue.js"></script> <script src"https://cdn.jsdelivr.net/npm/echarts5.4.0/dist/echarts.min.js"></script> 2.1 补充基本的body内容 <div id…

今年Android面试必问的这些技术面,2024Android常见面试题

都说程序员是在吃青春饭&#xff0c;这一点的确有一点对的成分&#xff0c;以前我不这么认为&#xff0c;但随着年龄的增长&#xff0c;事实告诉我的确是这样的&#xff0c;过了30以后&#xff0c;就会发现身体各方面指标下降&#xff0c;体力和身心上都多少有点跟不上了&#…

仿牛客网项目---私信列表和发送列表功能的实现

这篇文章我们来讲一下我的这个项目的另外一个功能&#xff1a;私信列表和发送列表功能。 先来设计DAO层。 Mapper public interface MessageMapper {// 查询当前用户的会话列表,针对每个会话只返回一条最新的私信.List<Message> selectConversations(int userId, int of…

云计算 3月1号 (文件管理及root破解登录和防御)

一、文件查找与打包压缩 grep: 文件内容过滤 [rootqfedu.com ~]# grep root /etc/passwd #从/etc/passwd文件中过滤root字段 root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologin [rootqfedu.com ~]# grep ^root /etc/passwd #从/etc/passwd文件…

第七篇:微信小程序的跳转页面

前提&#xff1a;建议还没学HTML、CSS、JavaScript、JSON、vue、Ajax的兄弟姐妹们&#xff0c;先去把这些基础补好过一遍&#xff0c;不然不好理解微信小程序 前面这一篇已经讲过一次<navigator>跳转页面的用法了&#xff0c;今天详细讲解一下 回顾&#xff1a; 小程序…