JavaWebDay13_课程回顾,Tomcat软件,Servlet入门.

JavaWebDay13

课程大纲
1、课程回顾(了解)
2、Tomcat软件(学会基本操作)
3、Servlet入门

第一章 课程回顾

1、软件架构
A. C/S  客户端,服务器 模型 (例如:QQ 需要安装客户端)
B. B/S  浏览器,服务器 模型 (例如:百度 直接使用浏览器访问)
2、网站的分类
A.静态网站(html、CSS、JavaScript) 内容不会改变
B.动态网站(JSP、PHP、ASP、Servlet)内容会改变 "新闻" --> 学习重点
3、网络三要素
A. IP地址(计算机在网络当中的地址)
B. 端口号(软件在计算机当中的地址) 范围: 0~65535  我们可以使用的是 1024~65535
C. 通讯协议 
	TCP协议: 安全性高,效率低,传输数据量大
	UDP协议: 安全性低,效率高,传输数据量小(视频会议)
4、常见的服务器软件
A.WebLogic  : Oracle 收费的大型服务器软件
B.WebSphere : IBM 收费的大型服务器软件
C.JBoss  : JBoss 收费的大型服务器软件
D.Tomcat : Apache 免费中小型服务器软件

第二章 Tomcat软件

1、下载安装
A.下载的地址: http://tomcat.apache.org/
B.解压压缩包即可(解压的路径当中,不要有中文存在,不要有空格)	
2、启动Tomcat
启动方式: 在bin目录当中,找到 startup.bat
验证方式: 在浏览器当中输入:  http://127.0.0.1:8080/
3、常见问题
A.黑框框一闪而过(解决方案:配置JAVA_HOME环境变量)
B.启动报错(解决方案: 暴力杀死占据端口号的进程<推荐> 或者 修改Tomcat端口号)

备注:
	1.查看端口号和进程PID的操作: 在小黑窗口当中输入指令  netstat -ano
	2.可以在任务管理器"详细信息"当中,查看PID信息
	3.修改端口号的操作(需要找到配置文件,Tomcat安装目录当中找到 conf -> server.xml 行数是68行)
		    <Connector port="8080" protocol="HTTP/1.1"
               	connectionTimeout="20000"
               	redirectPort="8443" />
4、Tomcat的关闭方式
A.方式1:
	强制关闭。点击小黑窗口右上角的X

方式2:
	a.启动 shutdown.bat 文件
	b.小黑窗口,按下快捷键 Ctrl + C
5、Tomcat的部署方式
A.方式1:
	方法:
		在webapps当中把项目文件夹拷贝过去
	访问:
		http://127.0.0.1:8080/项目文件夹名称

B.方式2:
	方法:
		将打包的war包,直接丢在webapps目录当中,会自动解压
	访问:
		http://127.0.0.1:8080/项目文件夹名称

C.方式3:
	方法:
		在tomcast\conf\Catalina\localhost目录下面,新建一个xml文件(文件名称随意取名)
		project是项目文件夹名称,拷贝一句话: 
		<Context docBase="C:\Users\chc24\Desktop\project" />  
	访问:
		http://127.0.0.1:8080/xunimulu/meinv.jpg  
		//xunimulu是上面xml名称,meinv.jpg存在于project文件夹下面
6、JavaWeb项目目录结构
--项目目录
	--WEB-INF目录
		--web.xml  		<!-- web的核心配置文件 -->
		--classes目录 	<!-- 存在的java的class文件 -->
		--lib目录  		<!-- 依赖的jar包 -->
7、Tomcat与Idea的集成
A.集成的步骤:
	菜单栏 Run -> Edit Confi... -> Default -> TomcatServer -> local -> ...
        
B.热部署
	菜单栏 Run -> Edit Confi... -> Update Resource
	
C.在IDEA创建WEB模块
	New Module
		-> Java Enterprise
			-> JavaEE7 版本
			-> Tomcat 8.5.31
        	 -> 选择 Web Application
        	 -> Version 3.1
        	 -> Create web.xml

第三章 Servlet入门

1、Servlet的概述
Servlet是一个接口,定义了网络访问的规则.(抽象方法)
保证每一次访问的内容都根据逻辑进行判断,显示不同的内容出来(新闻每一次访问的时候都不一样)
2、Servlet的快速入门
A.创建JavaEE Module
B.写一个类,实现接口 javax.servlet.Servlet
C.重写五个方法
D.配置web.xml文件
	    <!-- 需要配置Servlet的路径(包名称类名称,网络访问路径)-->
		<servlet>
			<servlet-name>test01</servlet-name>
			<servlet-class>com.itheima01.Test01</servlet-class>
		</servlet>
		<servlet-mapping>
			<servlet-name>test01</servlet-name>
			<url-pattern>/aa</url-pattern>
		</servlet-mapping>
		<!-- 访问的地址 -->
		http://127.0.0.1:8080/aa	
3、Servlet的执行原理
A. 当服务器接受到客户端浏览器的请求后,会解析请求URL路径,获取访问的Servlet的资源路径
B. 查找web.xml文件,是否有对应的<url-pattern>标签体内容。
C. 如果有,则在找到对应的<servlet-class>全类名
D. tomcat会将字节码文件加载进内存,并且创建其对象
E. 调用其方法,如何知道调用的是哪一个方法?实现过Servlet接口.知道方法的名称返回值参数等.
4、Servlet生命周期
A. init() 初始化的方法,只会执行1次
        a.配置的两种情况(在web.xml文件的<servlet>标签当中配置)
            <load-on-startup> 数据值 </load-on-startup>
            0和正数:0-10之间) 服务器启动的时候,调用 init()方法
            负数:-10 - -1之间) 第一次访问的时候,调用 init()方法
        b.变量定义的问题
            可以把变量定义在方法当中,作为局部变量使用
            即使定义成员变量,也不要轻易修改变量的值,容易出现 多线程访问的数据安全问题!
B. service() 服务的方法,可以执行多次
C. destroy() 销毁的方法,只会执行1次
	执行的时机:正常关闭Servlet以及关闭之前执行."destroy方法相当于在交代临终遗言.死之前"
5、Servlet3.0配置的方式
在Servlet的实现类上面添加注解  @WebServlet("/bb")
访问的方式: http://127.0.0.1:8080/day13/bb   其中day13是虚拟目录
6、对应关系

Tomcat和Idea之间的目录存在对应关系

我们新建的JavaWeb项目,存在于 IDEA的工作空间当中.
如果部署在Tomcat当中,在Tomcat里面也存在对应的目录.
7、注意问题
在web/WEB-INF当中不要丢入资源文件(html,txt,png)这种文件不要放进去,直接的方式不能访问到
这些资源文件直接放在 web 文件夹下面
8、断点调试
A.添加断点
B.点击右上角的"小虫子"
C.运行 F7 或者 F8
D.清除断点
9、Servlet的体系结构
abstract class GenericServlet implements Servlet
abstract class HttpServlet extends GenericServlet
10、注解的匹配规则
A.基础语法(定义数组的多个匹配规则)
	@WebServlet({"/*","/test04/xx"})
    
B.常见的写法
	a.  "/*"   访问:   http://127.0.0.1:8080/day13    就可以访问,其中day13是虚拟目录
	b.  "/xx"  访问:   http://127.0.0.1:8080/day13/xx
	c.  "/xx/heihei"  访问:   http://127.0.0.1:8080/day13/xx/heihei
	d.  "*.do"   访问:   http://127.0.0.1:8080/day13/jiji.do  这里的jiji可以任意写	

Servlet 的最终写法

//终极版本的Servlet写法
//1.写一个类继承 HttpServlet
//2.重写 doGet() 和 doPost() 方法
//3.添加注解 @WebServlet

//访问的地址:   http://127.0.0.1:8080/xixi

@WebServlet("/xixi")
public class ThridServlet extends HttpServlet{


    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //super.doGet(req, resp);
        System.out.println("doGet执行鸟...");
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //super.doPost(req, resp);
        System.out.println("doPost执行鸟...");
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值