servlet 2020.10.23

本文介绍了Servlet的更新操作,包括Update resources、Update classes and resources、Redeploy和Redstart server,详细解释了它们对不同资源的影响。重点讲解了HttpServlet的使用,包括继承GenericServlet,重写service方法来处理Http请求和响应,以及如何通过ServletContext进行全局数据共享。此外,还提及了四大域对象——ServletContext、HttpSession、ServletRequest和ServletResponse的作用及基本操作。

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

//把ServletRequest转化为HttpServletRequest
HttpServletRequest request = (HttpServletRequest) req;

String method = req.getMethod();//获取用户qing求方式

刷新按钮中 :
第一个 Update resources :对jsp或xml生效
第二个 Update classes and resources:java类,xml,jsp,架包生效
第三个 Redeploy 把oi包重新部署
第四个 Redstart server 重启服务器

HttpServlet是实现servlet最常用的方法
1,继承GenericServlert,重写servlet方法
2,再重写的service(ServletRequest req, ServletResponse res)里把seq转成HttpServletRequest,
把ser转化成HttpServletResponse,这两个对象针对处理Http请求和响应的,调用重写的
service(HttpServletRequest req, HttpServletResponse res) ,在重写的servlet中获取用户请求方式,根据请求方式进行判断,结果去调用doget和dopost方法,doget和dopost是抽象方法。

ServletContext接口 域对象 全局存储信息空间 一个web项目,就存在一个ServletContext实例,每个Servlet都可以访问到它,用于数据共享
获取方法: ServletConfig的getServletContext()方法
GenericServlet的getSerletContext()方法

四大域对象: ServletContext
HttpSession 会话(浏览器的开启到关闭),在一个会话之内可以做数据共享
Http ServletRequest 请求,在同一层请求共享

//获取真是路径  (磁盘上的路径)
out.print(ctx.getRealPath("/")+"<hr>");
//获取根目录,获取项目应用上下文
out.print(ctx.getCoutextPath()+"<hr>");//重要

在外配置全局

<!--配置全局web初始化参数-->
<context-param>
    <param-name>username</param-name>
    <param-value>root</param-value>
</context-param>
<context-param>
    <param-name>pwd</param-name>
    <param-value>123456</param-value>
</context-param>
//创建ServletContext对象  通过对象获取全局变量初始化参数
 ServletContext context = getServletContext();

//getInitParameter();根据初始化参数名获取初始化参数值
String userName = context.getInitParameter("username");
System.out.println(userName);

//getContextPath();获取当前web应用的根目录  绝对路径 要把前面的也加上
System.out.println(context.getContextPath());

和域对象相关的方法
setAttribute 设置值 往域对象存值
getAttribute 获取值
removeAttribute 删除

jsp就是一个servlet
一个jsp页面有多个脚本片段,可以相互访问

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值