JavaWeb核心编程之(三.1)ServletHello

时间:2022-11-16 14:50:33

Servlet简介
Java Servlet是和平台无关的服务器端组件,它运行在Servlet容器中. Servlet容器负责Servlet和客户的通信以及调用Servlet方法, 在这里Servlet容器指的就是Tomcat,Servlet和客户端通信采用"请求/响应"的模式.
Servlet可以完成如下功能:
--创建并返回基于客户请求的动态HTML页面
--创建可嵌入到现有HTML页面中的不分HTML页面(HTML片段).
--与其他服务器资源(如数据库或基于Java的应用程序)进行通信

下面直接上图上代码

同样的先新建一个动态的web工程

创建类 HelloServlet.java

 package com.hello.testservlet;

 import java.io.IOException;

 import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse; public class HelloServlet implements Servlet { @Override
public void destroy() {
// TODO Auto-generated method stub
System.out.println("destory");
} @Override
public ServletConfig getServletConfig() {
// TODO Auto-generated method stub
System.out.println("getServletConfig");
return null;
} @Override
public String getServletInfo() {
// TODO Auto-generated method stub
System.out.println("getServletInfo");
return null;
} @Override
public void init(ServletConfig arg0) throws ServletException {
// TODO Auto-generated method stub
System.out.println("init");
} @Override
public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("service");
} public HelloServlet() {
super();
System.out.println("HelloServlet's constructor");
} }

编辑web.xml文件

 <?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
<display-name>helloServlet</display-name> <!-- 注意Servlet-name需要保持一致 -->
<servlet>
<servlet-name>helloS</servlet-name>
<!-- 全类名 -->
<servlet-class>com.hello.testservlet.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>helloS</servlet-name>
<!-- 访问路径 -->
<url-pattern>/hes</url-pattern>
</servlet-mapping> </web-app>

右键项目 Run as->Run on service

浏览器访问http://localhost:8080/helloServlet/hes 即可在控制台看到如下输出

 HelloServlet's constructor
init
service

http://localhost:8080/helloServlet  这部分是项目根

url-pattern属性中配置的/hes 就是从项目根呷的访问路径