文章开头先来个自我批评,由于最近开始了新一轮的学习,在博客方面,更新的应该更勤一些。关于Servlet早就学习完了,可是二到现在才刚刚出,表示对不起观众了。
在总结J2EE十三个规范的时候,就说过对Servlet的感觉了——Asp中的一般处理程序。由于没有做过asp的MVC模式开发,所以对于jsp里面用的不知道asp中应该怎样对应,但是肯定的是,asp一定能够实现。
对Servlet也可以理解为可以沟通后台与前台的一个类:request获取前台传来的东西,response往前台传回,而本身是在服务器运行,所以可以运行后台的东西。
有了这些理解,那么我的第一个HelloServlet程序写起来就简单很多了。
Servlet和一般处理程序一样,都是可以直接在地址栏输入地址访问的,而在地址栏输入访问,调用的都是doGet方法,所以我只重写了doGet方法。
Servlet:
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloServlet extends HttpServlet{
protected void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException,IOException {
System.out.print("Hello Servlet");
response.getWriter().println("Hello Servlet");
}
}
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/HelloServlet</url-pattern>
</servlet-mapping>
在浏览器中输入地址,指定servlet路径,这个路径是url-pattern里面的虚路径。可以虚拟的为servlet进行分包:/test/HellowServlet,在访问这个servlet的时候,就需要加上test,而对于web服务器中的目录是不需要改的。
现在就可以看到在控制台端(服务器),有HelloServlet,而页面端(客户端),也有HelloServlet字样,所以在jsp开发中,Servlet是作为控制器(联系Model和View)。
关于Servlet就先说到这,这篇博客和上篇这么联系紧密的博客时间隔得太久了,最近根据一个项目在学习J2EE,博客会紧随而至。