CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web 开发

象这样的链接是如何实现的?http://www.qqq.com/adsclick?oid=23423&siteid=123456

楼主huolin(cfanbo)2006-06-03 13:30:04 在 Java / Web 开发 提问

象这样的链接是如何实现的?http://www.qqq.com/adsclick?oid=23423&siteid=123456  
  我们平时就用一般是一些带扩展名的文件,如adsclick.php?oid=1132&w=32  
  上面的adsclick是一个文件吗?还是其它的?有这方面的资料吗?  
   
  问题点数:10、回复次数:2Top

1 楼rsallen()回复于 2006-06-04 00:29:22 得分 0

这里adsclick是一个servlet类啊,你可以大概去了解一下MVC,这里把oid跟siteid的值传递给adsclick这个类处理,这个类继承HTTPservlet类。servlet类中一般是在doGet()方法里写这样一段代码。。假如之前那个网址是http://www.qqq.com/cservlet?flag=summit   这个网址转向一个注册页面,这里的cservlet是一个servlet类,之中会有这样一段代码:  
      public   void   doGet(HttpServletRequest   request,   HttpServletResponse   response)   throws  
                          ServletException,   IOException   {  
                  response.setContentType(CONTENT_TYPE);  
                  String   flag   =   request.getParameter("flag");//得到网址中flag的值  
                  class_name   sm   =   new   class_name();  
  //(class_name)类名,就是一个你自己定义的一个累的名称,里面包括了很多  
  //方法,是属于控制层面的。比如里面可以包括一个显示用户信息的方法,可以包括提交用户信息  
  //到数据库的方法等。  
          if   (flag==null){  
                  forward("/index.jsp",request,response);  
          }else   if(flag.equals("summit")){  
                  forward("/incomemain.jsp",request,response);  
          }else   if(flag.equals("show_info")){  
                ArrayList   list   =   class_name.show_info();//class_name这个类里的show_info()方法  
                //用来显示一些信息,比如一条用户信息:   用户名   密码   E-MAIL   性别   年龄     。。  
                    request.setAttribute("show_info",list);//把信息传到服务器,然后可以从浏览器取  
                //得信息,show_info   是名字   list代表值。  
                  forward("/show_info.jsp",request,response);  
          }  
          }  
  当然其中的forward()方法是自己定义的,用来转到其他页面  
    public   void   forward(String   path,   HttpServletRequest   request,  
                                                                          HttpServletResponse   response)   throws  
                                  ServletException,   IOException   {  
                                  request.getRequestDispatcher(path).forward(request,   response);  
          }Top

2 楼loveyt(咆哮的独角兽^大家都在长大)回复于 2006-06-04 01:06:21 得分 0

纠正一下  
  adsclick并不是一个Servlet类,而是在web.xml内对一个HttpServlet类的path定义,确切的说它是一个虚拟路径,通过这个路径到web.xml内找到其描述对应的class,并且执行这个class内部的编码逻辑。Top

相关问题

关键词

得分解答快速导航

  • 帖主:huolin

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo