TomcatServlet快速入门
web概念
软件架构
C/S:客户端/服务器端
B/s:浏览器/服务器端
资源分类
静态资源
所有用户访问后得到的结果是一样的,即被称为静态资源,比如html、css、javascript
动态资源
每个用户访问后得到的结果是不一样的,被称为动态资源。动态资源访问后需要转换为静态资源返回给浏览器端。比如:servlet、jsp、asp
网络通信三要素
IP
电子设备在网络中的唯一标识
端口
应用程序在计算机中的唯一标识
网络协议
规定了数据传输的规则
tcp:安全协议,三次握手。HTTP、FTP、SMTP、POP3
udp:不安全协议,速度快。DHCP、DNS、RIP、SNTP
web服务器软件
服务器
安装了服务器软件的计算机
服务器软件
接受用户请求、处理用户请求、做出响应
web服务器软件
接受用户请求、处理用户请求、做出响应。在web服务器软件中,可以部署web项目,让用户通过浏览器来访问这些项目。
Tomcat就是一种web服务器软件。
Tomcat使用
部署项目
直接放在webapps目录下即可,访问的时候文件夹/文件名
简化部署,将项目打包成一个war包,将war包放在webapps目录下,war包会自动解压缩,访问方式同上
配置conf/server.xml文件,可以将项目放在任意目录下
在<Host>标签体中配置 <Context docBase="D:\hello" path="/hehe" />
docBase:项目存放的路径
path:虚拟目录
热部署方式(推荐)
在conf/Catalina/localhost创建一个name.xml文件
<Context docBase="D:\hello" />
虚拟目录就是name
java动态项目
WEB-INF目录
–web.xml 核心配置文件
–classes目录 放置字节码文件的目录
–lib目录 放置依赖的jar包
IDEA集成Tomcat
servlet(server applet)
概念
运行在服务端的小程序
本质上是一个接口,定义了java类被浏览器访问到的规则
快速入门
创建一个javaEE项目
定义一个类实现servlet接口
实现抽象方法
配置servlet
在web.xml文件中配置
<servlet><servlet-name>demo1</servlet-name><servlet-class>cn.itcast.web.servlet.ServletDemo1</servlet-class> </servlet> <servlet-mapping><servlet-name>demo1</servlet-name><url-pattern>/demo1</url-pattern> </servlet-mapping>
执行原理
- 服务器解析浏览器输入的路径,解析URL路径,获取servlet资源路径
- 查找web.xml,看是否有对应的中的内容
- 如果有,再找到配置文件中对应的servlet的全类名,将该类字节码对象加载进内存,并创建字节码对象
- 调用其方法
servlet3.0支持注解配置
@WebServlet("/requestDemo2")
IDEA与tomcat配置
IDEA会为每一个tomcat部署的项目单独建立一个配置文件。查看控制台的log:
Using CATALINA_BASE: "C:\Users\fqy\.IntelliJIdea2018.1\system\tomcat\_itcast"
工作空间项目 和 tomcat部署的web项目
- tomcat真正访问的是“tomcat部署的web项目”,“tomcat部署的web项目"对应着"工作空间项目” 的web目录下的所有资源
- WEB-INF目录下的资源不能被浏览器直接访问。
TomcatServlet快速入门相关推荐
- Shiro第一个程序:官方快速入门程序Qucickstart详解教程
目录 一.下载解压 二.第一个Shiro程序 1. 导入依赖 2. 配置shiro配置文件 3. Quickstart.java 4. 启动测试 三.shiro.ini分析 四.Quickstart. ...
- 计算机入门新人必学,异世修真人怎么玩?新手快速入门必备技巧
异世修真人怎么快速入门?最近新出来的一款文字修仙游戏,很多萌新不知道怎么玩?进小编给大家带来了游戏新手快速入门技巧攻略,希望可以帮到大家. 新手快速入门攻略 1.开局出来往下找婆婆,交互给点钱,旁边有 ...
- Spring Boot 2 快速教程:WebFlux 快速入门(二)
2019独角兽企业重金招聘Python工程师标准>>> 摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘 ...
- Apache Hive 快速入门 (CentOS 7.3 + Hadoop-2.8 + Hive-2.1.1)
2019独角兽企业重金招聘Python工程师标准>>> 本文节选自<Netkiller Database 手札> 第 63 章 Apache Hive 目录 63.1. ...
- 《iOS9开发快速入门》——导读
本节书摘来自异步社区<iOS9开发快速入门>一书中的目录,作者 刘丽霞 , 邱晓华,更多章节内容可以访问云栖社区"异步社区"公众号查看 目 录 前 言 第1章 iOS ...
- BIML 101 - ETL数据清洗 系列 - BIML 快速入门教程 - 序
BIML 101 - BIML 快速入门教程 做大数据的项目,最花时间的就是数据清洗. 没有一个相对可靠的数据,数据分析就是无木之舟,无水之源. 如果你已经进了ETL这个坑,而且预算有限,并且有大量的 ...
- python scrapy菜鸟教程_scrapy学习笔记(一)快速入门
安装Scrapy Scrapy是一个高级的Python爬虫框架,它不仅包含了爬虫的特性,还可以方便的将爬虫数据保存到csv.json等文件中. 首先我们安装Scrapy. pip install sc ...
- OpenStack快速入门
OpenStack云计算快速入门(1) 该教程基于Ubuntu12.04版,它将帮助读者建立起一份OpenStack最小化安装.我是五岳之巅,翻译中多采用意译法,所以个别词与原版有出入,请大家谅解.我 ...
- Expression Blend实例中文教程(2) - 界面快速入门
上一篇主要介绍Expression系列产品,另外概述了Blend的强大功能,本篇将用Blend 3创建一个新Silverlight项目,通过创建的过程,对Blend进行快速入门学习. 在开始使用Ble ...
最新文章
- android clean 框架,clean架构
- MicroPython技术及应用定义
- Java之 javaObject与jsonString的转换
- Eureka-服务注册
- Socket之UDP服务器【Python】
- 大学生要学计算机嘛,大学新生有必要买电脑吗,为什么很多人都带电脑去学校了?...
- .NET网络编程学习(三)
- 深度有趣 | 30 快速图像风格迁移
- UVA - 514:Rails
- 用户 'NT AUTHORITY\NETWORK SERVICE' 登录失败问题
- XHTML CSS 常见问题和解决方案
- dubbo配置文件xml校验报错
- ASP.NET之通过JS向服务端(后台)发出请求(__doPostBack is undefined)
- C语言计算表达式咋写,C语言如何计算表达式(x++)+(++x)+(x++)
- 临时开启PHP错误提示
- 券商交易模式下的单产品多券商方案
- react+ts 实现类组件 父子组件传值
- 台式电脑属于小型电子计算机,个人计算机属于小型计算机。
- 谷歌的云计算是什么样子的?
- 鲜为人知的PCB抄板常识,您了解多少?