该博客主要记录在学习黑马程序员Javaweb过程的一些笔记,方便复习以及加强记忆

🍡系列文章🍡 🚀🚀🚀 🍕 ✨JavaWeb学习笔记01 BS架构 Maven Tomcat Servlet

🍔 ✨JavaWeb学习笔记02 request和response

🍟 ✨JavaWeb学习笔记03 JSP MVC 🌭 ✨JavaWeb学习笔记04 待完善

文章目录

  • 一 . BS架构,HTTP协议

  • http请求数据格式和相应数据格式
  • 二 . web服务器
  • 2.1 tomcat的下载
  • 2.2 tomcat目录的介绍
  • 2.3 tomcat的基础配置
  • 2.4 tomcat的基础使用
  • 三 . Maven Web
  • 3.1使用骨架创建maven web项目
  • 3.2 不使用骨架创建maven web项目
  • 四 . IDEA配置tomcat
  • 4.1 idea配置本地tomcat,点击idea右上角的➕号
  • 4.2 使用插件,主要修改pom.xml
  • 五 . Servlet
  • 5.1 简介
  • 5.2 快速入门
  • 5.3 servlet执行流程和生命周期
  • 5.4 servlet 方法
  • 5.4 servlet体系结构
  • 5.5 httpServlet
  • 5.6 设置访问路径
  • 5.7 了解老版本servlet配置访问路径方式


一 . BS架构,HTTP协议

首先了解Javaweb技术栈,B/S架构和HTTP协议的基本概念
B/S架构即是 browser/server 浏览器/服务器架构模式

服务器和浏览器之间的通讯需要遵守HTTP协议




黑马程序员java升级考试 黑马程序员javaweb答案_ide

http请求数据格式和相应数据格式


get的请求参数是在请求行中(所以会有长度限制),post的请求参数是在请求体中,我们后端作为服务器端开发人员要获取浏览器发的请求参数,所以要了解请求数据的格式

黑马程序员java升级考试 黑马程序员javaweb答案_学习_02



黑马程序员java升级考试 黑马程序员javaweb答案_tomcat_03

这里列举部分常见相应状态码 需要的话自行百度查询

2xx : 成功

4xx :客户端错误,请求的路径错了,或者网站资源删除了

5xx :服务端错误,可能是代码或者sql语句出错!这里特别注意sql语句!


一般来说,浏览器发送请求,服务器解析请求,需要用Java代码区解析请求和用相应格式相应,这样做会特别麻烦,为了更方便开发,tomcat服务器包装了解析请求等代码。下面我们来介绍tomcat服务器

二 . web服务器

web服务器作用:

  1. 封装http协议操作,简化开发
  2. 将web项目部署到服务器中,对外提供网上浏览服务

tomcat是web服务器中的其中一种,也是一个servlet容器,servlet需要依赖tomcat才能运行


黑马程序员java升级考试 黑马程序员javaweb答案_学习_04



黑马程序员java升级考试 黑马程序员javaweb答案_学习_05



2.1 tomcat的下载

官网地址

黑马程序员java升级考试 黑马程序员javaweb答案_ide_06

解压后把项目代码放到tomcat的webapp中,启动satrt.sh即可运行服务器,关闭tomcat控制台用ctrl+c


2.2 tomcat目录的介绍

解压下载完的文件后,会发现里面有多个目录
这里来简略介绍一下

  • bin(二进制)目录
    里面有可执行文件
    startup.bat windows系统下的可执行文件
    startup.sh linux系统下可执行文件
  • conf目录
    tomcat的配置文件
  • lib目录
    Java的jar包,ps:tomcat是由Java开发的
  • logs目录
    里面放着日志文件
  • webapps目录
    里面放着tomcat项目代码

2.3 tomcat的基础配置

下图的配置8080也可以不设置,http协议的默认端口号是80,设置为80会方便一点点

因为tomcat默认端口号是8080,如果idea中启动tomcat失败可能是8080端口被占用,就要使用下面指令去删除占用8080端口的进程
 【注意这里要使用管理员去运行cmd命令台窗口】
 netstat -ano | findstr 8080	查看哪个进程使用8080端口
 taskkill -pid xxxx -f				删除该进程

若启动tomcat时发现出现中文乱码问题
在conf目录中logging文件里面修改编码
java.util.logging.ConsoleHandler.encoding【控制台编码修改为GBK】


黑马程序员java升级考试 黑马程序员javaweb答案_ide_07


注意:Javahome环境变量要配置好【能正常使用】


2.4 tomcat的基础使用

项目部署:把Java项目打包成war包放到webapps目录下



三 . Maven Web

这里,我们要了解maven web和学会idea创建maven web项目

maven项目比普通maven java项目多了个webapp,在pom.xml中设置打包方式为war包

maven帮我们打包后会生成target目录,里面就有war包,war包中有web-inf目录

里面装着编译完成后的字节码文件以及jar包【lib目录中】

黑马程序员java升级考试 黑马程序员javaweb答案_学习_08



3.1使用骨架创建maven web项目

ps:记得删除pom.xml中的代码

黑马程序员java升级考试 黑马程序员javaweb答案_tomcat_09



3.2 不使用骨架创建maven web项目

黑马程序员java升级考试 黑马程序员javaweb答案_java_10

PS:idae创建空项目,再创建模块【这个模块就可以使用maven web去创建】【记得所有路径要自己补充,idea补全的不可信】
PS 2:记得修改maven仓库的路径

四 . IDEA配置tomcat

4.1 idea配置本地tomcat,点击idea右上角的➕号

下图是设置工件到要配置的模块

黑马程序员java升级考试 黑马程序员javaweb答案_黑马程序员java升级考试_11

4.2 使用插件,主要修改pom.xml

alt+insert可以快速导入插件

配置代码中也可以修改端口号和路径等

黑马程序员java升级考试 黑马程序员javaweb答案_ide_12

五 . Servlet

5.1 简介

servlet的作用

  1. 接收用户端发来的请求
  2. 调用其他java程序来处理请求
  3. 将处理结果,返回到服务器中

黑马程序员java升级考试 黑马程序员javaweb答案_tomcat_13

PS:jdbc也是javaee的规范【接口】

5.2 快速入门

servlet对象是由web服务器tomcat来创建的

黑马程序员java升级考试 黑马程序员javaweb答案_tomcat_14

PS:记得路径要加"/"

PS2:导入jar包,记得在pom中点击刷新

导包代码

<dependency>
  	<groupId>javax.servlet</groupId>
  	<artifactId>javax.servlet-api</artifactId>
  	<version>4.0.1</version>
  	<scope>provided</scope>
</dependency>

这个依赖范围必须设置,这个provided是在编译和测试环境有效,运行范围无效
打成war包中不会有这个包,因为tomcat自带servlet包


5.3 servlet执行流程和生命周期

黑马程序员java升级考试 黑马程序员javaweb答案_ide_15

黑马程序员java升级考试 黑马程序员javaweb答案_ide_16

5.4 servlet 方法

黑马程序员java升级考试 黑马程序员javaweb答案_ide_17

5.4 servlet体系结构

了解servlet 简化servlet开发

黑马程序员java升级考试 黑马程序员javaweb答案_tomcat_18

5.5 httpServlet

httpServlet 是servlet的实现类,所以以后继承使用httpServlet 即可

黑马程序员java升级考试 黑马程序员javaweb答案_java_19

记得用注解设置访问路径,一个类可以配置多个访问路径

5.6 设置访问路径

黑马程序员java升级考试 黑马程序员javaweb答案_tomcat_20

5.7 了解老版本servlet配置访问路径方式

黑马程序员java升级考试 黑马程序员javaweb答案_黑马程序员java升级考试_21

以上,就是第一章的所有内容,感谢观看🙇