
正文
JAVAWEB的基本入门(JSP、Tomcat)>从零开始学JAVA系列
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
目录
- JAVAWEB的基本入门(JSP、Tomcat)
- 使用idea创建web项目的两种方式
- 1、直接创建一个web项目(这样创建好的项目可以直接运行)
- 2、创建一个普通的java项目并配置web模块
- 新建一个普通的java项目
- 添加web模块
- 添加一个打包构建(因为必须要打包才能部署到tomcat中)
- 配置tomcat并且部署项目到tomcat中
- JAVAWeb项目与JAVA项目的区别?
- 工作目录与部署目录的区别
- 稍微说一嘴,idea在运行tomcat的机制
- 浏览器与服务器的小问题
- 获取浏览器时间和服务器时间
- 浏览器向服务器发送请求的3种方式
- Get请求与Post请求的区别
- Tomcat各目录的作用,以及在IDEA中时候tomcat的一点细节
- Tomcat各目录的作用
- IDEA中时候tomcat的一点细节
- 理解HTTP协议
- 什么是HTTP协议
- HTTP工作原理
- HTTP协议的特点
- HTTP请求规则
- 常见的响应码
- 使用idea创建web项目的两种方式
JAVAWEB的基本入门(JSP、Tomcat)使用idea创建web项目的两种方式1、直接创建一个web项目(这样创建好的项目可以直接运行)
1、直接创建一个web项目(这样创建好的项目可以直接运行)

2、创建一个普通的java项目并配置web模块
新建一个普通的java项目

添加web模块

添加一个打包构建(因为必须要打包才能部署到tomcat中)

配置tomcat并且部署项目到tomcat中
第一步:
第二步:
第三步:配置好该配置的名字(自定义),指定tomcat
第四步:将项目部署到tomcat服务器中
JAVAWeb项目与JAVA项目的区别?- JAVAWEB项目相比于JAVA项目需要用到JAVAEE的jar包
- JAVAWEB相比于JAVA项目,实现了B/S架构
- JAVAWEB项目可以存放动态网页与静态网页
工作目录与部署目录的区别- 工作目录是你写的代码所在的目录

- 部署目录是发布到服务器上后映射的目录(访问项目时,以该目录为根目录)
验证:tomcat启动后,访问资源(正常访问),然后删除该目录下的文件就访问不到了

稍微说一嘴,idea在运行tomcat的机制
- 工作目录是你写的代码所在的目录

- 部署目录是发布到服务器上后映射的目录(访问项目时,以该目录为根目录)
验证:tomcat启动后,访问资源(正常访问),然后删除该目录下的文件就访问不到了
稍微说一嘴,idea在运行tomcat的机制
idea会按照你配置的tomcat为模板,创建一个copy后的tomcat来运行你的项目,每一个项目都会创建一个新的tomcat,以你配置的tomcat为模板
这个路径就是生成的tomcat

浏览器与服务器的小问题获取浏览器时间和服务器时间
<%@ page import="java.time.LocalDateTime" %>
<%@ page import="java.time.format.DateTimeFormatter" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<% LocalDateTime date = LocalDateTime.now();
String localDate = date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
out.print("服务器时间为:"+ localDate);
Thread.sleep(3000);
%>
<script type="text/javascript">
var date = new Date().toLocaleTimeString();
document.write("浏览器时间为:" + date);
</script>
</head>
<body>
<h1>获得服务器时间和浏览器时间小案例</h1>
</body>
</html>
浏览器向服务器发送请求的3种方式
- 在地址栏中直接输入URL访问(get)
- 超链接的方式(get)
- 表单提交的方式(get/post),推荐使用post
Get请求与Post请求的区别
Get请求的特点
- 传输方式:数据通过URL传递
- 传输格式:只能传输文本格式
- 大小: 传输的数据大小受到限制(URL有最长限制)
- 传输速度快
Post请求的特点
- 请求方式:数据通过数据包的方式隐式传递
- 传输格式:支持任意类型的传输格式
- 大小: 理论上无大小限制(除非服务器端限制上传大小)
- 传输速度相比get慢
Tomcat各目录的作用,以及在IDEA中时候tomcat的一点细节Tomcat各目录的作用

IDEA中时候tomcat的一点细节
- 运行tomcat项目时,解决修改了静态文件需要重启tomcat服务器的问题

- 在浏览器中访问时,虚拟路径太长的问题

理解HTTP协议什么是HTTP协议
HTTP协议是超文本传输协议,用于规定发送各种请求,返回何种响应
HTTP工作原理
- HTTP协议遵循 请求(request)/响应(response)模型
- 在客户端没有发送请求给服务端时,服务端无法推送信息给客户端
- 请求时需要建立连接,在服务器完成响应后断开,连接不会一直存在(意味着每一次请求对于服务器来说都是一个新的用户访问了一个请求)
- 一个请求的页面中一旦引入了n个资源文件,则会多出n个请求
- HTTP1.0时,每次请求都会建立新的TCP连接,HTTP1.1 建立的TCP连接可以复用
HTTP协议的特点
- 支持B/S模式
- 简单快速>能够快速有效的处理大量请求
- 灵活> HTTP允许任意传输文件类型,使用content-type设置
- 无状态> 浏览器与服务器之间的连接是不持久的,无法保持事物处理的状态。例如记忆用户名等(需使用cookie或者session解决)
HTTP请求规则
HTTP协议默认端口为:80
HTTPS协议默认端口为:443
requet请求的格式为:
- 请求行:统一资源定位符(URL)、协议版本号
- 消息报头:包含请求的各种信息
- 可能的内容:POST请求发送的数据
response响应的格式为:
- 状态行:包含协议的版本号、响应码
- 消息报头:服务器信息、字符编码格式、MIME类型(文件类型)
- 响应的正文
常见的响应码
1XX:信息相响:表示接受到请求并且继续处理
2XX:处理成功响应:表示动作被成功的接收、理解和接受
3XX:重定向响应:为了完成指定的动作,必须完成进一步处理和操作
4XX:客户端错误:客户请求包含语法错误或者是不能正确执行
5XX:服务器端错误:服务器端不能正确执行一个正确的请求
200 OK //客户端请求成功
302 REDIRECT //重定向
403 Forbidden //服务器收到请求,但是拒绝提供服务(没有权限)
404 Not Found //请求资源不存在,如输入了错误的URL
500 Internal Server Error //服务器发生不可预期的错误
JAVAWEB的基本入门(JSP、Tomcat)>从零开始学JAVA系列的更多相关文章- JSP的执行原理、JSP的内置对象、四大作用域解析、MVC模式理解>;从零开始学JAVA系列
目录 JSP的执行原理.JSP的内置对象.四大作用域解析.MVC模式理解 JSP的执行原理 这里拿一个小例子来解析JSP是如何被访问到的 首先将该项目部署到tomcat,并且通过tomcat启动 通过 ...
- JAVAWEB过滤器、监听器的作用及使用>;从零开始学JAVA系列
目录 JAVAWEB过滤器.拦截器的作用及使用 过滤器Filter 什么是过滤器 为什么要使用过滤器(过滤器所能解决的问题) 配置一个过滤器完成编码的过滤 编写一个EncodingFilter(名称自 ...
- JAVAWEB - Servlet原理及其使用>;从零开始学JAVA系列
目录 Servlet原理及其使用 什么是Servlet Servlet的使用 编写一个Servlet,使用继承HttpServlet的方式 配置web.xml 很简单的几个JSP文件 小提示,如果继承 ...
- JAVA数组的基础入门>;从零开始学java系列
目录 JAVA数组的基础入门 什么是数组,什么情况下使用数组 数组的创建方式 获取数组的数据 数组的内存模型 为什么数组查询修改快,而增删慢? 查询快的原因 增删慢的原因 数组的两种遍历方式以及区别 ...
- IDEA使用Tomcat时控制台乱码的解决方案>;从零开始学JAVA系列
IDEA使用Tomcat时控制台乱码的解决方案 解决方案1,修改启动时虚拟机参数 解决方案2,修改idea的设置 解决方案3,修改idea配置文件 在最后添加一行 '-Dfile.encoding=U ...
- spring框架的学习->;从零开始学JAVA系列
目录 Spring框架的学习 框架的概念 框架的使用 Spring框架的引入 概念 作用 内容 SpringIOC的学习 概念 作用 基本使用流程 SpringIOC创建对象的三种方式 通过构造器方式 ...
- Session与Cookie的原理以及使用小案例>;从零开始学JAVA系列
目录 Session与Cookie的原理以及使用小案例 Cookie和Session所解决的问题 Session与Cookie的原理 Cookie的原理 Cookie的失效时机 小提示 Session ...
- 数据库建模、面向对象建模>;从零开始学java系列
目录 数据库建模 前置知识 使用PowerDesigner数据库建模设计 一对多CDM概念数据模型设计 多对多的PDM物理数据模型设计(针对mysql) PowerDesigner将不同的模型进行转换 ...
- 进入mysql的学习>;从零开始学JAVA系列
目录 MySQL的学习 什么是MYSQL 安装MYSQL Window安装MYSQL(压缩包版) 什么是MYSQL 安装MYSQL Window安装MYSQL(压缩包版) MYSQL基本指令 DDL ...
随机推荐- vim简明教程
在shell中新建一个文件 # vim a.txt vim有三种模式:一般模式.插入模式.底行模式 三种工作模式 1.命令模式 移动光标 hjkl yy 复制 nyy 从光标向下复制n行 0 移动光标 ...
- [iOS]The app icon set named ";AppIcon"; did not have any applicable content.
Develop Tools: xCode 5.1 I write a demo for app settings feature. The tutorial url is here. When I a ...
- AssetsManager下载类
cocos2dx-2.1.3 2dx自己代的例子进行讲解 360 cocos2dx net --> 2.1.3AssetsManager AppDelegate.cpp详解 1.创建目录 ...
- zzuli oj 1146 吃糖果
Description HOHO,终于从Speakless手上赢走了所有的糖果,是Gardon吃糖果时有个特殊的癖好,就是不喜欢连续两次吃一样的糖果,喜欢先吃一颗A种类的糖果,下一次换一种 口味,吃一 ...
- How to Compile Java DBus
1 download or git clone Java DBus git clone git://anongit.freedesktop.org/dbus/dbus-java dbus-java 2 ...
- 『简单dp测试题解』
这一次组织了一场\(dp\)的专项考试,出了好几道经典的简单\(dp\)套路题,特开一篇博客写一下题解. Tower(双向dp) Description 信大家都写过数字三角形问题,题目很简单求最大化 ...
- maven配置及IDEA配置maven环境
一. maven的下载及配置 1. maven下载地址 可以在网址:https://maven.apache.org/download.cgi下载最新版本的maven 2. maven文件解压缩 解压 ...
- struct和union,enum分析
空结构体占用的内存多大? struct d { }; int main() { struct d d1; struct d d2; printf("%d,%0x\n",sizeof ...
- JSP源码、改写Servlet为JSP、查看转译成为Servlet的文件、JSP字符编码设置
概述 在Servlet中编写HTML太麻烦了,应该使用JSP.JSP中可以直接编写HTML,使用指示.声明.脚本(scriptlet)等元素来堆砌各种功能,但JSP最后还是会被容器转译为Servlet ...
- zookeeper &; kafka 集群
http://cloudurable.com/blog/kafka-architecture/index.html 静态解析 cat >> /etc/hosts << EOF ...
目录 JSP的执行原理.JSP的内置对象.四大作用域解析.MVC模式理解 JSP的执行原理 这里拿一个小例子来解析JSP是如何被访问到的 首先将该项目部署到tomcat,并且通过tomcat启动 通过 ...
目录 JAVAWEB过滤器.拦截器的作用及使用 过滤器Filter 什么是过滤器 为什么要使用过滤器(过滤器所能解决的问题) 配置一个过滤器完成编码的过滤 编写一个EncodingFilter(名称自 ...
目录 Servlet原理及其使用 什么是Servlet Servlet的使用 编写一个Servlet,使用继承HttpServlet的方式 配置web.xml 很简单的几个JSP文件 小提示,如果继承 ...
目录 JAVA数组的基础入门 什么是数组,什么情况下使用数组 数组的创建方式 获取数组的数据 数组的内存模型 为什么数组查询修改快,而增删慢? 查询快的原因 增删慢的原因 数组的两种遍历方式以及区别 ...
IDEA使用Tomcat时控制台乱码的解决方案 解决方案1,修改启动时虚拟机参数 解决方案2,修改idea的设置 解决方案3,修改idea配置文件 在最后添加一行 '-Dfile.encoding=U ...
目录 Spring框架的学习 框架的概念 框架的使用 Spring框架的引入 概念 作用 内容 SpringIOC的学习 概念 作用 基本使用流程 SpringIOC创建对象的三种方式 通过构造器方式 ...
目录 Session与Cookie的原理以及使用小案例 Cookie和Session所解决的问题 Session与Cookie的原理 Cookie的原理 Cookie的失效时机 小提示 Session ...
目录 数据库建模 前置知识 使用PowerDesigner数据库建模设计 一对多CDM概念数据模型设计 多对多的PDM物理数据模型设计(针对mysql) PowerDesigner将不同的模型进行转换 ...
目录 MySQL的学习 什么是MYSQL 安装MYSQL Window安装MYSQL(压缩包版) 什么是MYSQL 安装MYSQL Window安装MYSQL(压缩包版) MYSQL基本指令 DDL ...
- vim简明教程
在shell中新建一个文件 # vim a.txt vim有三种模式:一般模式.插入模式.底行模式 三种工作模式 1.命令模式 移动光标 hjkl yy 复制 nyy 从光标向下复制n行 0 移动光标 ...
- [iOS]The app icon set named ";AppIcon"; did not have any applicable content.
Develop Tools: xCode 5.1 I write a demo for app settings feature. The tutorial url is here. When I a ...
- AssetsManager下载类
cocos2dx-2.1.3 2dx自己代的例子进行讲解 360 cocos2dx net --> 2.1.3AssetsManager AppDelegate.cpp详解 1.创建目录 ...
- zzuli oj 1146 吃糖果
Description HOHO,终于从Speakless手上赢走了所有的糖果,是Gardon吃糖果时有个特殊的癖好,就是不喜欢连续两次吃一样的糖果,喜欢先吃一颗A种类的糖果,下一次换一种 口味,吃一 ...
- How to Compile Java DBus
1 download or git clone Java DBus git clone git://anongit.freedesktop.org/dbus/dbus-java dbus-java 2 ...
- 『简单dp测试题解』
这一次组织了一场\(dp\)的专项考试,出了好几道经典的简单\(dp\)套路题,特开一篇博客写一下题解. Tower(双向dp) Description 信大家都写过数字三角形问题,题目很简单求最大化 ...
- maven配置及IDEA配置maven环境
一. maven的下载及配置 1. maven下载地址 可以在网址:https://maven.apache.org/download.cgi下载最新版本的maven 2. maven文件解压缩 解压 ...
- struct和union,enum分析
空结构体占用的内存多大? struct d { }; int main() { struct d d1; struct d d2; printf("%d,%0x\n",sizeof ...
- JSP源码、改写Servlet为JSP、查看转译成为Servlet的文件、JSP字符编码设置
概述 在Servlet中编写HTML太麻烦了,应该使用JSP.JSP中可以直接编写HTML,使用指示.声明.脚本(scriptlet)等元素来堆砌各种功能,但JSP最后还是会被容器转译为Servlet ...
- zookeeper &; kafka 集群
http://cloudurable.com/blog/kafka-architecture/index.html 静态解析 cat >> /etc/hosts << EOF ...







