学过JSP基础的人应该知道JSP实际上就是一个Servlet,随着框架的出现,MVC三层的设计方式,让JSP现在只是承担视图层的页面显示角色,不会再在其中嵌入过多的java代码。
学习web现在最基础的就是进行jsp + servlet +JDBC进行网站的开发,接下来我要做一个最简单的web应用程序,让大家知道servlet的工作过程。
我的IDE是myeclipse10,tomcat7.0 我觉得这两个经典的版本就足够学习阶段使用了,也用过2014版本的myeclipse,eclipse ee版本,但是觉得功能太过繁杂,基本上都用不到。
在myeclipse中,点击file新建一个web工程:
这里的上下文路径context root URL是/csucoderlee,也就意味着当你运行tomcat后,打开浏览器输入http://localhost:8080会出现tomcat的主页,在其后面添加上下文路径http://localhost:8080/csucoderlee就指定到你的该webproject了。
同时也要注意我这里勾选了java ee6.0的包,这个包一定要有,因为这个包下面包含了servlet相关类的jar文件。
这样,finish,我们就新建了一个工程,工程的目录如下:
在webRoot下面的WEB-INF下面,有一个叫做lib的文件夹,将来web需要的其他jar包(如JDBC数据库连接相关的jar包)直接放到该目录下即可,在该lib文件夹的同级目录下有一个web.xml的文件夹,这个xml就是配置文件,配置servlet的相关路径。
下面我们在src下面新建一个package,在该package下面建立一个HelloServlet的class,代码如下:
package org.csu.coderlee.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class HelloServlet extends HttpServlet{
@Override
protected void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("this is my first servlet");
}
}
新建的HelloServlet需要继承HttpServlet,覆盖HttpServlet的service方法,在代码编辑区空白处右键显示的菜单目录中有source选项,单机override/implements methods会出现窗口,这个窗口中显示了继承关系,也同时显示了父类的一些可以覆盖的方法,如下:
我们选择覆盖父类的service方法,执行该HelloServlet类,具体的其他方法,会在后面的教程中逐一使用。
接下来我们就要配置的web.xml文件了。
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<display-name></display-name>
<servlet>
<servlet-name>hello</servlet-name>
<servlet-class>org.csu.coderlee.servlet.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/h</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
我们给我们的HelloServlet起了个名字叫hello,同时也给这个起名叫做hello的servlet定义了一个路径/h,这样我们在浏览器中输入http://localhost:8080/csucoderlee/h就能找到该serlvet类。
将该web程序部署到你myeclipse中的tomcat服务器,打开tomcat服务器,在浏览器中输入上面的地址http://localhost:8080/csucoderlee/h,在我们的控制台就能看见System输出的信息