一、Servlet技术引言
1、什么是servlet
a、Servlet(Server Applet),全称Java Servlet,未有中文译文。是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。
b、JavaWeb程序的开发基础,JavaEE规范的一部分。
2、servlet的核心作用
利用Servlet进行处理,从而生成动态网页。
二、Servlet的开发步骤
1、问题分析
servlet有两种开发方式:
a、实现Servlet接口。
b、继承HttpServlet类。(HttpServlet类实现了Servlet接口,所以我们继承HttpServlet也就意味着间接实现了Servlet接口)
实现Servlet接口就意味着要实现Servlet接口中定义的所有方法,而我们Servlet开发中用到最多的方法是Service方法,我们在Service方法中接收request和相应response。而其他诸如init()方法和destory()等方法其实作为我们程序员很少用到。所以我们在这里推荐使用第二种方法,继承HttpServlet类,覆盖其中的Service方法。
2、开发步骤
a、编码继承HttpServlet类,覆盖其中的service()方法。
public class FirstServlet extends HttpServlet{ @Override public void service(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{ //设置应该类型,告知浏览器我服务器给你返回的是一个文本类型的网页 response.setContentType("text/html"); //获得输出流,输出数据 PrintWriter out = response.getWrite(); //通过流输出网页 out.println("<html>"); out.println("<body>"); out.println("hello servlet"); out.println("/body"); out.println("</html>"); //清空缓冲区 out.flush(); } }
b、配置web.xml
<servlet> <servlet-name>first</servlet-name> <servlet-class>com.liquidxu.servlet.FirstServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>first</servlet-name> <url-pattern>/f</url-pattern> </servlet-mapping>
其中,first是该Servlet的唯一标识(仅用于web.xml文件中),com.liquidxu.servlet.FirstServlet则是该servlet的全限定名,/f则是该sevlet的访问路径。