今日学习了Servlet的一些基本知识:Servlet本质是一个java类,它是运行在Servlet容器中。
Servlet实现了:1.创建并返回客户端请求的动态页面 2.与数据库进行访问。
Servlet本身为一组接口在javax.servlet中,我们需要定义一个类实现Servlet接口。
Servlet接口有五种方法:
public void destroy() {}销毁Servlet
public ServletConfig getServletConfig() {}获取Servlet的一些信息
public String getServletInfo() {}返回一串字符信息
public void init(ServletConfig arg0) throws ServletException {}初始化Servlet
public void service(ServletRequest arg0, ServletResponse arg1){}处理用户请求,最核心的方法。
光是建了一个类,我们并保护能直接访问,需要在web.xml中映射这个类。
<servlet>
<servlet-name>MyServlet</servlet-name>
<servlet-class>myservlet.mmmservlet</servlet-class>//这个地方要写包名.类名
</servlet>
<servlet-mapping>
<servlet-name>MyServlet</servlet-name>//与上面一样
<url-pattern>/Myservlet</url-pattern>// 你要通过浏览器访问的名字注意斜杠
</servlet-mapping>
给出类的定义:
package myservlet; 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 mmmservlet implements Servlet{ public void destroy() { // TODO Auto-generated method stub } public ServletConfig getServletConfig() { // TODO Auto-generated method stub return null; } public String getServletInfo() { // TODO Auto-generated method stub return null; } public void init(ServletConfig arg0) throws ServletException { // TODO Auto-generated method stub } public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException { String id=arg0.getParameter("id"); System.out.println("我是Servlet,我已经接受了用户端发来的请求,参数是"+id); arg1.setContentType("text/html;charset=utf-8"); arg1.getWriter().write("客户端你好,我接受到你的请求"); } }
运行结果: