目录

1. 基本概念

1.2、web应用程序

1.3、静态web

1.4、动态web

2.web服务器

2.1

2.2、web服务器

3、Tomcat下载安装

高难度面试题

4、HTTP

4.1、什么是HTTP

4.2、两个时代

5、JavaWeb内容

1、JavaWeb的概念

2、Web资源的分类

3、常用的web服务器

4、Tomcat的使用

6、IDEA整合Tomcat服务器

7、IDEA中动态web工程的操作

7.1、IDEA中如何创建动态web工程

7.2、Web工程的目录介绍

7.3、如何给动态web工程添加额外jar包

7.4、如何在IDEA中部署工程到Tomcat上运行


Java Web

1. 基本概念

web开发:

  • web,网页的意思,www.baidu.com

  • 静态web

    • html,css

    • 提供给所有人看的数据始终不会发生变化!

  • 动态web

    • 提供给所有人看的数据会发生变化,每个人在不同时间不同地点看到的信息各不相同!

    • 技术栈:Servlet/JSP,ASP,PHP

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

1.2、web应用程序

web应用程序:可以提供浏览器访问的程序;

  • a.html,b.html...多个web资源,这些web资源可以被外界访问,对外界提供服务;

  • 你们能访问到的任何一个页面或者资源,都存在于这个世界的某一个角落的计算机上。

  • URL

  • 这个同意的web资源会被放在同一个文件夹下,web应用程序-->Tomcat:服务器

  • 一个web应用由多部分组成(静态web,动态web)

    • html,css,js

    • jsp,servlet

    • jar包

    • 配置文件(Properties)

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

1.3、静态web

  • htm,.html,这些都是网页的后缀,如果服务器上一直存在这些东西,我们就可以直接进行读取。通络;

  • 静态web存在的缺点

    • Web页面无法动态更新,所有用户看到的都是同一个页面

      • 轮播图,点击特效:伪动态

      • JavaScript[实际开发中,它用的最多]

      • VBScript

    • 它无法和数据交互(数据无法持久化,用户无法交互)

1.4、动态web

页面会动态展示:“web的页面展示效果因人而异”;

缺点:

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

    • 停机维护

  • 它可以与数据库交互

2.web服务器

2.1

ASP:

  • 微软:国内最早流行的就是ASP;

  • 在HTML中嵌入了VB的脚本,ASP+COM;

  • 在ASP开发中,基本的一个页面都有几千行的代码,页面极其混乱

  • 维护成本高

  • C#

  • lls

    <h1><h1><h1><h1><h1><</h1></h1></h1></h1>
    </h1>

JSP,PJP,PHP

php

  • PHP开发速度很快,功能很强大,跨平台,代码很简单(70%)

  • 无法承载大访问量的情况(局限性)

JSP/Servlet

B/S: 浏览和服务器

C/S:客户端和服务端

  • sun公司主推的B/S架构

  • 基于JAVA语言的(所有的大公司,或者一些开源的组件,都是用JAVA写的)

  • 语法像ASP,ASP->JSP,加强市场强度;

2.2、web服务器

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

IIS

微软的; ASP...Windows中自带的

Tomcat

面向百度编程;

Tomcat是......

下载tomcat

  1. 安装or解压

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

  3. 这个东西的作用

3、Tomcat下载安装

  1. 1 下载安装

3.2 .。。。

3.3 配置

可以配置主机的端口号与主机的名称

可以配置启动的端口号

  • tomcat的默认端口号:8080

  • mysql:3306

  • http:480

  • https:443

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

可以配置主机的名称

  • 默认的主机名为:localhost->127.0.0.1

  • 默认网站应用存放的位置为:webapps

<Host name="www.dzg.com" appBase="webapps"unpackWARs="true" autoDeploy="true">

高难度面试题

请你谈一谈网站是如何进行访问的!

  1. 输入一个域名,回车

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

    1. 有:直接返回对应的ip地址,这个地址中,由我们需要访问的web服务器

      127.0.0.        www.dzg.com
    2. 没有:去DNS服务器找,找到的话就返回,找不到就返回找不到

4、HTTP

4.1、什么是HTTP

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

  • 文本:html,字符串,~......

  • 超文本:图片,音乐,视频,定位,地图......

  • 80

Http:安全的

  • 443

4.2、两个时代

  • http1.0

  • http2.0

5、JavaWeb内容

1、JavaWeb的概念

  1. 什么是JavaWeb

    JavaWeb是指,所有通过Java语言编写可以通过浏览器访问的程序的总称,叫JavaWeb。

  2. 什么是请求

    请求是指客户端给服务器发送数据,叫请求Request。

  3. 什么是响应

    响应是指服务器给客户端回传数据,叫响应Response。

  4. 请求和响应的关系

    请求和响应是成对出现的

2、Web资源的分类

web资源按实现的技术和呈现的效果不同,又分为静态资源和动态资源两种。

静态资源:html、css、js、txt、mp4视频,jpg图片

动态资源:jsp页面、Servlet程序

3、常用的web服务器

  • Tomcat:由Apache组织提供的一种web服务器,提供对jsp和Servlet的支持。它是一种轻量级的javaWeb容器(服务器),也是当前应用最广的javaWeb服务器(免费)。

  • Jboss:是一个遵从JavaEE规范的、开放源代码的、纯Java的EJB服务器,它支持所有的JavaEE规范(免费)。

  • GlassFish:由Oracle公司开发的一款JavaWeb服务器,是一款强健的商业服务器,达到产品级质量(应用很少)。

  • Resin:是CAUCHO公司的产品,是一个非常流行的服务器,对Servlet和JSP提供了良好的支持,性能也比较优良,resin自身采用JAVA语言开发(收费,应用比较多)。

  • WebLogic:是Oracle公司的产品,是目前应用最广泛的web服务器,支持JavaEE规范,而且不断地完善以适应新的开发要求,适合大型项目(收费,用的不多,适合大公司)。

4、Tomcat的使用

1. 安装

找到需要的tomcat版本对应的zip压缩包解压到需要安装的目录即可

2. 目录介绍

  • bin 专门用来存放tomcat服务器的可执行程序

  • conf 专门用来存放tomcat服务器的配置文件

  • lib 专门用来存放tomcat服务器的jar包

  • logs 专门用来存放tomcat服务器运行时输出的日志信息

  • temp 专门用来存放tomcat运行时产生的临时数据

  • webapps 专门用来存放部署的web工程

  • work 是tomcat工作时的目录,用来存放tomcat运行时jsp翻译为Servlet的源码,和Session钝化的目录。

3. 如何启动tomcat服务器

第一种方式

找到tomcat目录下的bin目录下的startup.bat文件,双击即可启动tomcat服务器。

如何测试tomcat服务器是否启动成功?

打开浏览器,输入如下地址:

  1. http://localhost:8080

  2. http://127.0.0.1:8080

  3. http://真实ip:8080

出现如下界面,则说明tomcat服务器启动成功!

常见的启动失败情况由:双击start.bat文件,就会出现一个小黑窗一闪而过,这时失败的原因基本就是没有配置好JAVA_HOME环境变量。

配置JAVA_HOME环境变量。(jdk安装目录,bin目录的上一级目录)

第二种启动tomcat服务器的方式

  1. 打开命令行

  2. cd到你的tomcat的bin目录下,并输入命令:catalina run

4、tomcat的停止

  1. 点击tomcat窗口的关闭按钮

  2. 把tomcat服务器窗口置为当前窗口,按ctrl+c停止

  3. 找到tomcat的bin目录下的shutdown.bat双击,就可以停止tomcat服务器。

5、如何修改tomcat的端口号

找到tomcat目录下的conf目录,找到server.xml配置文件

双击进去找到<connector>标签,修改其中的port值(1-65535),修改完成重启tomcat服务器即可生效

6、如何部署web工程到tomcat中

第一种方法:

只需要把web工程的目录拷贝到tomcat的webapps目录下即可

  1. 在webapps目录下创建一个book工程:

  2. 把工程内容拷贝到里面:

  1. 如何访问tomcat下的web工程:

    只需要在浏览器中输入访问地址格式如下:

    http://ip:port/工程名/目录下/文件名

第二种方法:

找到tomcat下的conf目录下的conf\Catalina\localhost目录,创建如下的配置文件:abc.xml

<!-- Context表示一个工程上下文

path表示工程的访问路径:/abc

docBase表示你的工程目录在哪里

记得保存时编码格式需要为utf-8

还需重启tomcat服务器

-->

<Context path="/abc"docBase="D:\book" />

访问这个工程的路径如下:http://ip:port/abc/ 就表示访问D:\book目录

7、手拖html页面到浏览器和在浏览器中输入http://ip:port/工程名/访问的区别

  • 手拖html页面到浏览器,这个时候浏览器地址为:file://D:/book/index.html,使用的是file协议:表示告诉浏览器直接读取file:协议后面的路径,解析展示在浏览器即可。

  • 在浏览器中输入http://ip:port/工程名/访问的地址格式为:http://ip:port/工程名/资源名,使用的是http协议,背后的原因完全不同,客户端(浏览器)请求发给服务器(Tomcat),服务器收到请求之后,读取你想要访问的资源文件,然后回传给客户端想要的页面的内容。

8、ROOT的工程的访问,以及默认index.htlm页面的访问

当我们在浏览器地址栏输入访问地址为:http://ip:port/ ====> 没有工程名时,访问的是ROOT工程。

当我们在浏览器地址栏输入访问地址为:http://ip:port/工程名/ ====> 没有资源名时,默认访问的是index.html页面

9、tomcat启动乱码解决办法

打开tomcat目录下的conf文件夹下的logging.properties

将其中的java.util.console.....那行的编码格式的UTF-8改为GBK即可!

6、IDEA整合Tomcat服务器

File | Settings | Build, Execution, Deployment | Application Servers

先进入上面的路径,点击+号添加tomcat server

添加自己tomcat存放的路径后点击ok后apply并ok即可

7、IDEA中动态web工程的操作

7.1、IDEA中如何创建动态web工程

new一个新的module,选择普通的java项目创建,创建完成后右键项目添加支持,选择web application即可

创建成功如下图:

7.2、Web工程的目录介绍

  • src:src目录存放自己编写的java源代码

  • web:专门存放web工程的资源文件,例如:html页面、css文件、js文件等

  • WEB-INF:是一个受服务器保护的目录,浏览器无法直接访问到此目录的内容

  • lib:存放第三方jar包

  • web.xml:整个动态web工程的配置部署描述文件,可以在这里配置很多web工程的组件,例如:Servlet程序、Filter过滤器、Listerner监听器、Session超时等等。

7.3、如何给动态web工程添加额外jar包

上面有讲过,操作不变即可。

第二种方式:

  1. 可以打开项目结构菜单操作页面,添加一个自己的类库

  2. 浏览,选择当前类库需要的jar包,添加

  3. 选择你添加的类库,给哪个模块使用

  4. 选择Artifacts选项,将类库添加到打包部署中,点击fix后apply->ok

7.4、如何在IDEA中部署工程到Tomcat上运行

7.4.1. 建议修改web工程对应的Tomcat运行实例名称:

点击run->Edit Configurations->+->tomcat server->local->修改名字后apply->ok

7.4.2. 确定你的Tomcat实例中有你要部署运行的web工程模块

将需要部署的web工程添加到Tomcat运行实例中,这里+和-可以添加和删除,下方的Application context是工程路径

7.4.3. 下图中的URL表示启动tomcat运行实例时,默认打开访问的地址,可以自行修改

7.4.4. 在IDEA中如何运行,和停止Tomcat实例

7.4.4.1 启动Tomcat实例:

7.4.4.2debug方式启动:

正常启动的箭头后面的昆虫图标

7.4.4.3 停止Tomcat实例:

再后面的红色方框

7.4.4.4 重启Tomcat实例:

四个选项依次代表的含义:

  • 重新更新web工程中的资源到Tomcat运行实例中

  • 更新web工程中的Class字节码和资源文件到Tomcat运行实例中

  • 重新部署web模块,但是不重启Tomcat实例

  • 重启Tomcat实例

7.4.4.5 资源热部署:

选择Update classes and resources后可完成资源热部署,修改body中的内容等,即时生效

自己自学的JavaWeb的学习笔记相关推荐

  1. [硬核]卷起来!两万六千字总结的JavaWeb核心技术学习笔记

    文章目录 前言 http协议笔记 JavaWEB笔记_1 JavaWEB笔记_2(JSP) JavaWEB笔记_3(web项目) Servlet Tomcat笔记 总结 前言 大家好,我是ChinaM ...

  2. 基于CentOS7上的搭建javaweb环境 - 学习笔记

    一, 概述 上一篇记录了安装CentOS7的基本步骤及配置,现在要讲如何搭建基于CentOS7环境的javaweb环境了,我以 mysql + jdk1.8.0_91 + apache tomcat7 ...

  3. 5岁自学python编程-python学习笔记(五岁以下儿童)深深浅浅的副本复印件,文件和文件夹...

    python学习笔记(五岁以下儿童) 深拷贝-浅拷贝 浅拷贝就是对引用的拷贝(仅仅拷贝父对象) 深拷贝就是对对象的资源拷贝 普通的复制,仅仅是添加了一个指向同一个地址空间的"标签" ...

  4. 自学SQL网之学习笔记(题目+答案)

    最近在重新学习数据库SQL,这里分享一下在使用<自学SQL网>上自学期间所涉及的练习题. 重要的事情要说三遍!仅供参考!仅供参考!仅供参考!!! 当然也悄悄种草一下这个网站练练手还是蛮不错 ...

  5. 【JavaWeb】学习笔记(Tomcat)

    JavaWeb 后端部分 1.Tomcat服务器 1.1 背景了解: 1.1.1 Web资源分类: 静态资源:html.css.js.txt.mp4视频.jpg图片等 动态资源:jsp页面.servl ...

  6. 自学python入门-自学Python编程基础学习笔记 PDF 完整超清版

    一. Why. 为什么学习Python.Python这门语言​用处比较广泛: 1.写测试脚本,因为PY是解释性语言,天生就有作为测试脚本语言的优势,语法简单,通俗易懂,可移植性好(底层使用C语言来编写 ...

  7. JavaWeb基础学习笔记

    Tomcat Web 应⽤服务器:Tomcat.Jboos.Weblogic.Jetty 安装 Tomcat 1.官⽹下载压缩⽂件.https://tomcat.apache.org/download ...

  8. Javaweb开发学习笔记(三)

    Servlet 1)Servlet的概述 1.什么是Servlet?Servlet,全称Java Servlet,是用Java编写的服务器端程序.其主要功能在于处理请求和发送响应.狭义的Servlet ...

  9. JAVAWeb的学习笔记

    web应用的概念:使用浏览器进行访问的应用程序 web程序采用的是B/S架构 B/S架构就是浏览器跟服务器进行数据交互的方式,数据传输的方式 采用http协议 C/S就是客户端跟服务端进行数据交互的方 ...

最新文章

  1. binlog关闭事务记录_Mysql 数据库 InnoDB引擎对binlog_format的限制
  2. 6.1的学习成果,主要是用到指向函数的指针
  3. VTK:图片之DrawShapes
  4. 《C++ Primer 第五版》(第3.5-3.6节) ——C++中的内置数组类型,string对象和C风格字符串
  5. CSS清除默认样式,面试篇
  6. LeetCode 1103. 分糖果 II
  7. 计算机主机组成部分和功能,电脑的组成部分及作用
  8. c语言图案问题,C语言绘图问题
  9. 牛逼了,用Python攻破wifi密码
  10. 不写代码不用Excel,销售总监的数据分析,10分钟你就可以学会
  11. jQuery的加法运算,val()获取的结果相加变成了字符串连接。
  12. SQL多表合并查询结果
  13. React行内样式写法
  14. Activiti实现流程定义的控制与修改
  15. Raucous Rockers_usaco3.4.4
  16. 微信小程序——实现下拉框
  17. 如何做CRM系统的客户开发?
  18. 为每天节省两小时-华芸AS4004T万兆NAS搭建测试
  19. HUAWEI P10/P10 Plus的摄影追求:极致是如何“创造”的?
  20. ppt从第二页设置页码

热门文章

  1. PBI DAX 中GroupBy
  2. 物联网毕业设计 单片机空气质量检测仪
  3. svn 错误 以及 中文翻译
  4. 360软件管家怎么下载python_python 爬虫爬取360安全卫士对某一个号码的标识
  5. MTP设备无法安装驱动的解决办法
  6. 图形特效编程---片段函数与抓屏技术
  7. 利用 Python 爬取了 13966 条运维招聘信息,我得出了哪些结论?
  8. 从软件开发角度去看当前的市面上的电子烟
  9. 疯了!“微软让我损失了两亿美金!”
  10. 使用Appium在手机打开APP并录制简单脚本