黑马程序员技术交流社区
标题:
[石家庄校区]tomcat&servlet
[打印本页]
作者:
黑马11期
时间:
2018-12-29 14:55
标题:
[石家庄校区]tomcat&servlet
web相关概念回顾 :
1)软件架构
:
*C/S : 客户端/服务器
*B/S : 浏览器/服务器
2)资源分类:
*静态资源
: 所有用户访问后,得到的结果都是一样的,称为静态资源,静态资源乐意直接被;浏览器解析 -->如 : html,css,JavaStript
*动态资源 :
每个用户访问相同资源后,得到的结果可能不一样,称为动态资源动态资源被官方问候,需要先转换为静态资源,在返回给浏览器 -->如 : servlet/jsp.php,asp
3)网络通信三要素 :
*IP : 电子设备(计算机)在网络中的唯一标识
*端口 : 应用程序在计算机中的唯一标识 : 0~65536
*传输协议 : 规定了数据传输的规则
-基础协议 :
(1) tcp 安全协议 三次握手,但是速度,慢
(2) udp : 不安全协议,容易丢失数据,但是速度快
tcp/udp的区别 :
(1)tcp面向连接,udp不面向连接
(2)udp速度快
(3)tcp更加安全,tcp建立连接需要经过三次握手
web服务器软件 :
1)服务器 :
安装了服务器软件的计算机
2)服务器软件 :
接收用户的请求,处理请求,做出响应
*在web服务器软件中,可以部署web项目,让用户通过浏览器来访问这些项目
*web容器
3)常见的Java相关的web服务器软件 :
*webLogic : oracle公司 , 代行的JavaEE服务器,支持所有的JavaEE规范,收费的.
*webSphere : IBM公司 ,大型的JavaEE服务器,支持所有的JavaEE规范,收费的.
*JBOSS: JBOSS公司的,大型的JavaEE服务器,支持所有的JavaEE规范,收费的.
*Tomcat : Apache基金组织 ,中小型的JavaEE服务器,仅仅支持少量的JavaEE项目,开源免费的
4)JavaEE
:
Java语言在企业级开发中使用的技术规范的总和,一共规范了13项大的规范
tomcat目录简介 :
1)bin :
可执行文件-->tomcat核心目录(启动/关闭)
2)conf :
配置文件-->tomcat的核心配置目录-->tomcat自定义配置
3)lib :
依赖jar包-->tomcat运行时借助的jar包
4)logs :
日志文件
5)temp :
临时文件
6)webapps :
存放web项目-->tomacat的项目目录
7)work :
存放运行时的数据
8)开发环境 :
*coding环境(测试)
9)生产环境-->上线环境
*正式给用户使用的版本
静态项目和动态项目 :
*目录结构 :
*java动态项目的目录结构
--项目名称
--
Servlet : server applet
1)概念 :
运行在服务器端的小程序
*Servlet就是一个接口,定义了java类被浏览器访问到(tomcat识别)的规则
*将来我们自定义一个类,实现Servlet接口,复写方法
2)快速入门
*创建JavaEE项目
*定义一个类,必须实现servlet接口
*实现借口中的抽象方法
*配置Servlet
Servlet执行原理
1)当服务器接收到客户端浏览器的请求后,会解析请求的URL路径,获取访问Servlet的资源路径
2)查找web.xml文件,是否有对应的<url-pattern>标签体内容
3)如果有,则在找到对应的<servlet-class>全类名
4)tomact会将字节码文件加载进内存,并且创建其对象
5)调用方法
Servlet中的生命周期
1)init :
被创建-->初始化方法-->在servlet被创建时执行,只会执行一次
*在<servlet>标签下创建<load-on-startup>
*默认情况下,第一次访问时,Servlet被创建
-<load-on-startup>的值为负数
*在服务器启动时创建
-<load-on-srartup>的值为0或正整数
*Servlet 的init方法,只执行一次,说明一个Servlet在内存中只存在一个对象,Servlet是单例的
*servlet本身是单例,但是被多线程调用
*多个用户同时访问时,可能存在线程安全问题
*解决 : 尽量不要在Servlet中定义成员变量,即使定义了成员变量,也不要对其修改值
2)servlet :
提供服务-->每一次Servlet被访问时执行,执行多次
*每次访问Servlet时,Servlet方法都会被调用一次
3)destroy :
销毁方法-->在服务器正常关闭时执行,只会执行一次
*Servlet被销毁时执行,服务器关闭时,Servlet被销毁
*只有服务器正常关闭时,才会执行destroy方法.
*destroy方法在Servlet销毁之前执行,用于释放资源
4)ServletConfig :
获取ServletConfig对象.配置SerlvetConfig文件的
5)获取Servlet的一些信息,版本 作者 等等
Servlet3.0 :
*好处 :
*支持朱姐配置,可以不需要web.xml了
*步骤
1)创建JavaEE项目,选择Servlet的版本3.0以上,可以不创建web.xml
2)定义一个类,实现Servlet接口
3)复习方法
IDEA与tomcat的相关配置
1)IDEA会为每一个tomcat部署的的项目单独建立一份配置文件
*查看控制台的log
2)工作空间项目和tomcat部署的web项目
*tomvat真正访问的是"tomcat部署的web项目","tomcat部署的web项目"对应着"工作空间项目"的web目录下的所有资源
*WEB-INF目录下的资源不能被浏览器直接使用
3)断点调试 : 使用小虫子启动,debug启动
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2