10月17日Servlet培训日记

首先回答了王涛发现的一个问题:在通过Servlet实现动态文件下载时,对于中文的文件名称,浏览器显示为乱码。权威的解决方案,对于这样的问题,我需求正解的方法和步骤:先搜索RFC Content-Dispotion,找到RFC2183,然后搜索encode,找到RFC2184,最后从RFC2184中得到了权威解释。

一个Servlet无法通过Servlet API来知道自己的访问映射路径,要自己编程来实现,通过分析Struts的initServlet方法帮助大家复习了一下digester。
讲解request.getPathInfo的作用时,引出了下列问题:
一个Servlet处理所有的请求,该怎么设计?可以用下面的两种类方式:
(1)根据参数调用一个Servlet类中的相应方法
   /ActionServlet?action=del
   /ActionServlet?action=add

(2)根据pathInfo调用一个相应的方法,更多情况是调用一个相应的类,这也是struts的映射原理
 /ActionServlet/*
     /ActionServlet/del
     /ActionServlet/add

通过分析下面的源代码,来具体讲解request.getPathInfo的应用。
        ActionSevlet.doGet->ActionSevlet.process->RequestProcessor.process
从而引出了Struts的运行原理。


四个行为对应同一个Action类的四个方法:粗粒度
四个行为对应四个Action类的某个固定名称的方法:细粒度

粗粒度和细粒度的比较:就象家中的钱分开存储与集中存储的区别

一个Servlet跳转到jsp页面,jsp页面中的相对路径是相对于jsp,还是Servlet?
myeclipse生成的jsp页面中的<base>标签的作用。

通过检查schema强行用户使用https协议来访问某个Servlet资源
setContentType("text/html;charset=gb2312")的问题

  if(request.getScheme().equals("http"))
  {
   response.sendRedirect("https" +"://" + request.getServerName() + ":8443" + request.getRequestURI() + "?" + request.getQueryString());
   return;
  }

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值