web相关概念
web服务器软件:Tomcat
Servlet入门学习
软件架构
资源分类
网络通信三要素
IP:电子设备(计算机)在网络中的唯一标识
端口:应用程序在计算机中的唯一标识。0-65536
传输协议:规定了数据通信的规则
tcp:安全协议,三次握手,速度稍慢
udp:不安全协议。速度快
服务器:就是安装服务器软件的计算机
服务器软件:接收用户的请求,处理请求,做出响应
WEB服务器软件:接收用户的请求,处理请求,做出响应
常见的java相关的Web服务器软件:
JavaEE:java语言在企业级开发中使用的技术规范的总和,一共规定了13项大的规范
Tomcat:web服务器软件
安装:解压压缩包即可
卸载:删除就行
启动:
去目录下找bin目录下找startup.exe
可能遇到的问题
原因没有正确配置JAVA_PATH的环境变量
解决方案:正确配置
启动报错:
找到占用的端口号,并且找到对应的进程杀死改进程
修改自身的端口号config目录下server.xml http协议默认的端口号是80
关闭:
配置:
部署项目的方式
直接将项目放到webapps目录下即可
简化部署:将项目打包成war包 放到webapps下 会自动解压
去config/server.xml里面改虚拟路径
在
docBase:项目存放的路径
在conf\catelina\localhost创建任意的xml文件
写入内容:
静态项目与动态项目的目录结构
? --项目的根目录
? --WEB-INF目录
? --web.xml:web项目的核心配置文件
? --classed目录:放置字节码文件的目录
? --lib目录:放置依赖的jar包
将Tomcat集成到IDEA中 并创建JavaEE的项目,部署项目
概念:Servlet就是一个接口,定义了Java类被浏览器访问到(tomcat识别)的规则
将来我们自定义一个类,实现Servlet接口复写方法
快速入门:
创建一个JavaEE项目
定义一个类实现servlet接口
public class ServletDemo01 implements Servlet
实现接口中的方法
配置一下Servlet
在WEB-INF/web.xml中配置
<!--配置Servlet -->
<servlet>
<servlet-name>demo1</servlet-name>
<servlet-class>cn.lsl.web.serlet.ServletDemo01</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>demo1</servlet-name>
<url-pattern>/demo1</url-pattern>
</servlet-mapping>
访问http://localhost:8080/demo1
servlet执行原理:
public class ServletDemo01 implements Servlet {
//提供服务的方法
@Override
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
System.out.println("hello,servlet");
}
}
当服务器接收到客户端浏览器的请求之后,会解析请求URL路径,获取访问的Servlet的资源路径
查找web.xml文件,是否有对应的
如果有则在找到对应的
tomcat会将字节码文件加载进内存,并且创建其对象
调用其方法
servlet的生命周期
被创建:init方法 执行一次
在
<!--指定Servlet的创建时机
1.第一次被访问时,创建
*<load-on-startup>的值为负数
2.服务器启动时,创建
*<load-on-startup>的值为0或正整数
-->
提供服务:service方法 执行多次
每次访问Servlet时,Servlet方法都会被调用一次
被销毁:destroy方法 执行一次
destroy方法在Servlet被销毁之前执行,用于释放资源
servlet3.0:
好处:
步骤:
创建JavaEE项目选择Servlet版本3.0以上,可以不创建web.xml
定义一个类,实现Servlet接口
复写方法
在类上使用@webServlet注解,进行配置
@WebServlet("/demo2")//资源路径
public class SerletDemo01 implements Servlet {
@Override
public void init(ServletConfig servletConfig) throws ServletException {
}
IDEA会为每一个tomcat部署的项目单独建立一份配置文件
Using CATALINA_BASE: "C:\Users\李世林\.IntelliJIdea2017.3\system\tomcat\_BASIC_code"
工作空间项目 和 tomcat部署的web项目
原文:https://www.cnblogs.com/DemoLi/p/12770416.html