首页 > 代码库 > servlet学习
servlet学习
一直想学习java web开发,但不知道从何着手,查阅了相关资料后决定从servlet开始学习。
一个最基本的 Java Web 项目所需的 jar 包只需要一个 servlet-api.jar,共有 2 个包,分别是 javax.servlet 和 javax.servlet.http。
Java Web 项目还需要一个非常重要的配置文件 web.xml,关于servlet部分的内容如下:
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
<!
DOCTYPE
web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<
web-app
>
<
servlet
>
<
servlet-name
>hello_world</
servlet-name
>
<
servlet-class
>demo.HelloServlet</
servlet-class
>
<
load-on-startup
>1</
load-on-startup
>
</
servlet
>
<
servlet-mapping
>
<
servlet-name
>hello_world</
servlet-name
>
<
url-pattern
>/hello</
url-pattern
>
</
servlet-mapping
>
</
web-app
>
javax.servlet 和 javax.servlet.http 这两个包总共加起来也不过是三十四个接口和类。需要熟悉如下几个接口:
- HttpServlet
- ServetConfig
- ServletContext
- Filter
- FilterConfig
- FilterChain
- RequestDispatcher
- HttpServletRequest
- HttpServletResponse
- HttpSession
- 一些 Listenser 类
其中,HttpServletRequest 和 HttpServletResponse 尤其需要了解。
servlet应用程序体系结构为:
注意:因为容器是通过Java的反射API来创建Servlet实例,调用的是Servlet的默认构造方法(即不带参数的构造方法),所以我们在编写Servlet类的时候,不应该提供带参数的构造方法。
Servlet的生命周期示意图为:
Servlet 规范里还有另外一个非常重要而且非常有用的接口那就是 Filter 过滤器。在 web.xml 中Filter的配置必须放在 Servlet 的前面:譬如,
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?>
<!
DOCTYPE
web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<
web-app
>
<
filter
>
<
filter-name
>helloFilter</
filter-name
>
<
filter-class
>demo.HelloFilter</
filter-class
>
</
filter
>
<
filter-mapping
>
<
filter-name
>helloFilter</
filter-name
>
<
url-pattern
>/*</
url-pattern
>
</
filter-mapping
>
<
servlet
>
<
servlet-name
>hello_world</
servlet-name
>
<
servlet-class
>demo.HelloServlet</
servlet-class
>
<
load-on-startup
>1</
load-on-startup
>
</
servlet
>
<
servlet-mapping
>
<
servlet-name
>hello_world</
servlet-name
>
<
url-pattern
>/hello</
url-pattern
>
</
servlet-mapping
>
</
web-app
>
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。