www.xxx.com/index.jsp回车所显示的页面的数据都可以用哪种方式得到???

解决方案 »

  1.   

    httpclient or urlconncetion or其他
    给一个urlconnection的例子,里面的地址可别随便压,哈哈
    for (int i = 0; i < 10000; i++) {
    try {
    System.out.println("gg");
    String url = "http://www.chinatcc.gov.cn:8080/cmsadmin/shouli/shensu.jsp"; // 根据绝对URL地址构造URL对象
    URL cumtURL = new URL(
    url); // 利用cumtURL建立一个URLConnection对象
    URLConnection cumtConnection = cumtURL.openConnection();
    /**
     * (Request-Line) GET
     * http://www.dgsfs.net/product_search.asp?searchdqcph=s.F3462&searchcx=G
     * HTTP/1.0 Accept Accept-Language zh-cn Cookie
     * ASPSESSIONIDQQBRQBSA=PEPPLDIDBLOEDGIDDNKEPJBE Host
     * www.dgsfs.net Pragma no-cache Proxy-Connection Keep-Alive
     * User-Agent Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;
     * SV1; znwb6500)
     */
    cumtConnection.setRequestProperty("User-Agent",
    "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1; znwb6500)");
    cumtConnection.setRequestProperty("Pragma", "no-cache");
    cumtConnection.setRequestProperty("Proxy-Connection", "Keep-Alive");
    cumtConnection.setRequestProperty("Host", "www.dgsfs.net");
    cumtConnection.setRequestProperty("Cookie", "ASPSESSIONIDQQBRQBSA=PEPPLDIDBLOEDGIDDNKEPJBE");
    cumtConnection.setRequestProperty("Accept", "*/*");
    cumtConnection.setRequestProperty("Accept-Language", "zh-cn");
    cumtConnection.setRequestProperty("Pragma", "no-cache");
    InputStream urlStream = cumtConnection.getInputStream();
    BufferedInputStream buff = new BufferedInputStream(urlStream);
    Reader r = new InputStreamReader(buff, "gb2312");
    BufferedReader br = new BufferedReader(r);
    StringBuffer strHtml = new StringBuffer("");
    String strLine = null;
    while ((strLine = br.readLine()) != null) {
    System.out.println(strLine);
    strHtml.append(strLine + "\r\n");
    }
    System.out.println(strHtml);
    new Thread() {
    public void run() {
    try {
    System.out.println("thead start");
    this.sleep(1000);
    } catch (Exception ee) {
    ee.printStackTrace();
    }
    }
    }.start();
    urlStream.close();
    // //获取cumtConnection 对象的数据输入流
    // DataInputStream din = new DataInputStream(cumtConnection
    // .getInputStream());
    // String inputLine;
    // // 从输入流din读入一行数据
    // while ((inputLine = din.readLine()) != null) {
    // // 将数据信息显示到系统标准输出上
    // System.out.println(inputLine);
    // System.out.println();
    // }
    // 关闭输入流
    // din.close();
    } catch (Exception e) {
    e.printStackTrace();
    }
    }
      

  2.   

    哥啊,不是这样的,我不是要采集数据啦,就是网站首页的的数据怎么从后台传过来的,像写个函数加载了,request跳转啦,注意是地址栏只输入到index.jsp然后回车所显示的页面的数据都可以用什么方式从后台得到???
      

  3.   

    那你去了解下http协议吧。浏览器URL地址实际上是URI(统一资源定义符)的一个特例。它唯一的指示了internet/intranet上一个具体的WEB资源。假设浏览器要请求www.xxx.com/index.jsp这个资源,客户端和服务器的动作如下:1、客户端主机:
    1.1 将该地址提交给网关,网关从DNS处解析出目的是一台叫做www.xxx.com的主机,将该主机的IP地址返回给客户端主机
    1.2 客户端主机与该网站主机建立基于TCP的HTTP连接,连接成功后,发送符合HTTP协议格式的请求,主要是消息HTTP头。2、网站主机
    1.1 网站主机的web服务器监听到客户端的HTTP请求后,提取出HTTP消息头,在本地web资源中寻找客户端要请求的web资源。
    1.2 如果找到资源,web服务器接受并调用CGI程序处理该请求(如Java的Servlet),直接封装HTTP响应消息头和该资源数据(如果是静态资源如HTML,图片等),返回给客户端;或者调用相关的业务代码进行业务逻辑处理(如果是动态资源),处理结果按照HTML格式与HTTP响应头一起,发给客户端。
    1.3 如果没有找到资源,web服务器会返回客户端失败消息,一般是404.客户端的浏览器接收到数据后(客户端浏览器接收到的都是HTML格式数据),进行显示。服务器返回给客户端的最常用的响应码:
    200   成功消息
    404   未找到资源
    500   服务器端内部错误对于java web应用来说,最常用的就是404和500.对于ajax技术来说,上述三种响应码都要用到,甚至会用到其他响应码
      

  4.   

    1楼的我没看懂!
    楼主的意思是在地址栏输入index.jsp,就会走一个后台逻辑,然后把数据返回到页面上是吗?
      

  5.   

    输入到index.jsp我不知道怎么做,输入到index到可以,在web.xml配置一个servlet,专门拦截index,在servlet标签里设置一个jsp-file,指向一个页面,在这个页面把请求转发到后台,最后跳转到index.jsp
      

  6.   

    估计是我说的不是很明白
    举个例子
    http://www.shcpa.org.cn/shcpa/index.jsp我地址栏输入后直接回车,此时出现的页面的数据是如何从后台取到的?有哪些方法能做到呢?
      

  7.   

    比如写函数<body onload="init()">这样的啦
      

  8.   

    呃我也遇到同楼主一样的问题,我现在用的springMVC这个框架,.do的方法已经配置好了。
    不知道怎么在输入index.jsp的时候就直接加载???
      

  9.   

    在index。jsp页面里导入dao。<include/>标签
      

  10.   

    用拦截器试试 专门拦截index.jsp请求 
      

  11.   

    这就是浏览器对用户请求index.jsp返回的响应。以struts2为例子讲解,客户端初始化一个指向Servlet容器(例如Tomcat)的请求 ,这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp的可选过滤器,这个过滤器对于Struts2和其他框架的集成很有帮助,例如:SiteMesh Plugin),接着FilterDispatcher被调用,FilterDispatcher询问ActionMapper来决定这个请是否需要调用某个Action ,如果ActionMapper决定需要调用某个Action,FilterDispatcher把请求的处理交给ActionProxy ,ActionProxy通过Configuration Manager询问框架的配置文件,找到需要调用的Action类 ,ActionProxy创建一个ActionInvocation的实例。 ActionInvocation实例使用命名模式来调用,在调用Action的过程前后,涉及到相关拦截器(Intercepter)的调用。一旦Action执行完毕,ActionInvocation负责根据struts.xml中的配置找到对应的返回结果。返回结果通常是(但不总是,也可 能是另外的一个Action链)一个需要被表示的JSP或者FreeMarker的模版。在表示的过程中可以使用Struts2 框架中继承的标签。在这个过程中需要涉及到ActionMapper在上述过程中所有的对象(Action,Results,Interceptors,等)都是通过ObjectFactory来创建的。
      

  12.   

    可以直接掉action 在赚 index.jsp  
    我想 要是想直接在页面上就得直接查询啦
      

  13.   

    servlet  在web.xml里配置  <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
      </welcome-file-list>你在地址栏输入http://www.shcpa.org.cn/shcpa/index.jsp就会进入你写的index.jsp页面了