web学习之servlet

时间:2023-03-08 20:40:14
web学习之servlet

1)web服务软件作用: 把本地资源共享给外部访问

2)tomcat服务器基本操作 :

启动:  %tomcat%/bin/startup.bat

关闭: %tomcat%/bin/shutdown.bat

访问tomcat主页:

http://localhost:8080

3)web应用目录结构

|- WebRoot   根目录

|-静态资源(html+css+javascript+images+xml)  可以直接被浏览器访问到的

|-WEB-INF                                  不可以直接被浏览器访问到

|-classes     存放class字节码文件

|-lib         存放jar包文件

web.xml      web应用的配置文件,配置servlet

4)Servlet技术: 用java语言开发动态资源的技术

开发一个Servlet程序的步骤:

1)创建一个java类,继承HttpServlet类

2)重写HttpServlet类的doGet方法

3)把写好的servlet程序交给tomcat服务器运行!!!!

3.1 把编译好的servlet的class文件拷贝到tomcat的一个web应用中。(web应用 的WEB-INF/classes目录下)
3.2 在当前web应用的web.xml文件中配置servlet

<!-- servlet配置 -->

<servlet>

<servlet-name>HelloServlet</servlet-name>

<servlet-class>gz.itcast.HelloServlet</servlet-class>

</servlet>

<!--  servlet的映射配置 -->

<servlet-mapping>

<servlet-name> HelloServlet </servlet-name>

<url-pattern>/hello</url-pattern>

</servlet-mapping>

4)访问servlet

http://localhost:8080/myweb/hello

如果访问出现404错误首先检查servlet映射配置

编写servlet 步骤

编写java类 继承HttpServelt类
重写doget()和dopost()方法
Servelt程序交给tomcat服务器运行

<!-- 配置一个servlet -->

<!-- servlet的配置 -->

<servlet>

<!-- servlet的内部名称,自定义。尽量有意义 -->

<servlet-name>FirstServlet</servlet-name>

<!-- servlet的类全名: 包名+简单类名 -->

<servlet-class>cq.cqvie.FirstServlet</servlet-class>

</servlet>

<!-- servlet的映射配置 -->

<servlet-mapping>

<!-- servlet的内部名称,一定要和上面的内部名称保持一致!! -->

<servlet-name>FirstServlet</servlet-name>

<!-- servlet的映射路径(访问servlet的名称) -->

<url-pattern>/first</url-pattern>

</servlet-mapping>

servlet的访问路径

精确匹配             /first                 http://localhost:8080/ServletDemo/first

模糊匹配             /*                   http://localhost:8080/ServletDemo/任意路径

/cqvie/*               http://localhost:8080/ServletDemo/cqvie/任意路径

*.后缀名              http://localhost:8080/ServletDemo/任意路径.do

servlet生命周期

构造方法:创建servlet对象的时候调用。默认情况下,第一次访问servlet的时候创建servlet对象只调用1次。证明servlet对象在tomcat是单实例的。

init方法: 创建完servlet对象的时候调用。只调用1次。

service方法: 每次发出请求时调用。调用n次。

destroy方法: 销毁servlet对象的时候调用。停止服务器或者重新部署web应用时销毁servlet对象。