Servlet 的生命周期+Servlet 的常见错误总结

从第一次调用, 到服务器关闭。 如果在 web.xml 中配置了 load-on-startup 则是从服务器开启到服务器关闭。

/**
* Servlet的生命周期:
* 1、 从第一次调用到服务器关闭。文件删了都可以运行
* 2、 如果Servlet在web.xml中配置了load-on-startup, 生命周期为
从服务器启动到服务器关闭
* 注意:
* init方法是对Servlet进行初始化的一个方法, 会在Servlet第一次
加载进行存储时执行
* destory方法是在servlet被销毁时执行, 也就服务器关闭时。
* @author MyPC
**
/
public class ServletLife extends HttpServlet {
//初始化方法, 在servlet第一次加载内容的时候被调用
@Override
public void init() throws ServletException {
System.out.println("servlet初始化完成");
} /
/service方法, 真正处理请求的方法
@Override
protected void service(HttpServletRequest req,
HttpServletResponse resp)
throws ServletException, IOException {
resp.getWriter().write("servlet life");System.out.println("servlet life");
}
@Override
public void destroy() {
System.out.println("我被销毁了...");
}
} 
web.xml 配置:
<servlet>
<description>This is the description of my J2EE
component</description>
<display-name>This is the display name of my J2EE
component</display-name>
<servlet-name>ServletLife</servlet-name>
<servlet-class>com.bjsxt.servlet.ServletLife</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>my</servlet-name>
<url-pattern>/my</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ServletLife</servlet-name>
<url-pattern>/life</url-pattern>
</servlet-mapping>

Service 和 doGet 和 doPost 方法的区别

Service 方法:
不管是 get 方式还是 post 方式的请求, 如果 Servlet 类中有
service 方法, 则优先调用 Service 方法。
doGet 方法:
在没有 service 方法的情况下如果是 get 方式的请求所调
用的处理请求的方法
doPost 方法:
在没有 service 方法的情况下如果是 post 方式的请求所调
用的处理请求的方法
Servlet 的常见错误总结:

Servlet 的常见错误总结

  • 404错误:资源未找到
  • 原因一: 在请求地址中的servlet的别名书写错误。
  • 原因二: 虚拟项目名称拼写错误
  • 500错误: 内部服务器错误* 错误一:
  • java.lang.ClassNotFoundException: com.bjsxt.servlet.ServletMothod
  • 解决:
  • 在web.xml中校验servlet类的全限定路径是否拼写错误。
  • 错误二:
  • 因为service方法体的代码执行错误导致
  • 解决:
  • 根据错误提示对service方法体中的代码进行错误更改。
  • 405错误:请求方式不支持
  • 原因:
  • 请求方式和servlet中的方法不匹配所造成的。
  • 解决:
  • 尽量使用 service 方法进行请求处理, 并且不要再 service 方法中调用父类的
    service。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值