1.创建一个简单的Web项目
New > Project > Java EE > 勾选Web Application
1.2 idea安装tomcat
提示我们需要设置Artifact
登录后显示:
1.3 新建项目
在包cn.itcast.testServlet下建立类MyFirstServlet,实现Servlet
对Servlet进行配置
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<servlet>
<servlet-name>AA</servlet-name>
<servlet-class>cn.itcast.testServlet.MyFirstServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AA</servlet-name>
<url-pattern>/myFirst</url-pattern>
</servlet-mapping>
</web-app>
上述配置文件的要求:
- 2对<servlet-name>标签中的内容保持一致
- <upl-pattern>标签下的”/”不可丢
- 标签中的全路径必须写对
PS:按住Ctrl不松的同时,拿鼠标单击其内容可以跳入响应的类内即表示配置正确
访问结果如下:
启动tomcat并不会执行初始化MyServlet对象(因为没有设置load为1),但是调用构造函数和init方法的次数只有1次(单例的)
2.总结
2.1 什么是Servlet?
- Servlet 运行在服务端的Java小程序,是sun公司提供一套规范,用来处理客户端请求,响应给浏览器的动态资源(是运行在服务端的程序,而不是以静态文件形式存在).
- Servlet是JavaWeb三大组件之一(Servlet,Filter,Listener),且最重要.
2.2 Servlet的作用是什么?
用来处理从客户端发送过来的请求,并对该请求作出响应.
2.3 Servlet生命周期
- 当用户通过浏览器首次访问某个Servlet时,tomcat会调用servlet的构造函数创建一个Servlet对象,之后调用servlet下的init方法(仅执行一次)
- 调用servlet下的service方法,在service方法中判断本次是GET/POST方法,调用servlet下的doget/dopost方法
- 以后从客户端浏览器每次向服务端对当前servlet发起请求,仅仅只执行其下的service > doget/dopost
- 停止服务器(正常/中断)/重新加载项目 servlet销毁
正常停止服务器/重新加载项目会执行destory方法