servlet-3(核心)

本文介绍了Servlet的基本概念,包括通过实现servlet接口存在的问题及解决方案,详细解释了GenericServlet和HttpServlet两个核心抽象类的作用与用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.GenericServlet

  通过实现servlet接口时有一个很不方便的问题,有太多不需要实现的方法需要实现,通常我们只关注service方法,在service()中完成业务逻辑,但由于servlet接口中还存在其他方法,所以每次都不方便。这时我们可以通过定义一个抽象类,实现serlvet其他不需要实现的方法,或者让它为空方法体而将service方法写为抽象方法,想实现servlet方法时只需要继承这个抽象类就可以了

上面的类有一个问题就是无法获取ServletConfig对象,所以可以在这个类中创建一个ServletConfig对象,并在inti()方法中赋给它,同时可以添加其他比较重要的方法,如获取上下文,以及获取初始化属性等。

若一个类继承了这个类,但要求我们在初始化时做一些工作那我们该怎么办呢?

我们可以在这个类中编写一个无参inti()方法(这个方法是为了让子类重写的),我们可以在已有的init()方法中实现这个无参init方法

 

在servlet规范中已经位大家定义好了一个java.servlet.GenericServlet抽象类,也就是说我们以后实现servlet只需要继承这个类就可以了

 

2.HttpServlet

  为了保证系统的安全性,我们必须获取用户提交请求的方式,这样就可以根据提交的请求方式的不同来处理不同的操作。那么如何获取到用户请求的提交方式呢?我们需要从请求对象的ServletRequest对象获取,但是查看ServletRequest的API文档,并没有可以获取到提交方式的方法。但是其子接口HTTPServletRequest中有getMethod()方法可以获取用户的提交方式。

我们先定义一个HTTPServlet类继承自GenericServlet,首先在service方法中将ServletRequest对象和ServletResponse对象强转为HttpServletRequest和HttpServletResponse对象,然后再添加一个参数为HttpServletRequest和HttpServletResponse的service方法,在里面获取提交方式并进行判断

同样servlet规范中已经创建好了javax.servlet.HttpServlet类  QAQ

 

  

 

转载于:https://www.cnblogs.com/secondcao/p/7879713.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值