用户通过WEB客户端查看数据,WEB服务端是用JAVA做的。用户查看数据时,如果表里数据发生变化,数据库需要通知WEB端,重新激活查询,这样用户就可以看到变化的数据。现在的问题是如何通过数据库给WEB端发送通知,要发送什么内容,如何实现?请大师们帮忙解决,谢谢了最好能给个范例WEB端如何接收通知也是个问题。

解决方案 »

  1.   

    例子:使用utl_http获取某个http页面内容
    DECLARE
    req utl_http.req;
    resp utl_http.resp;
    VALUE VARCHAR2(4000);
    BEGIN
    req := utl_http.begin_request('http://www.5ienet.com/online.asp');
    utl_http.set_header(req, 'Content-Type', 'text/html; charset=gb2312');
    resp := utl_http.get_response(req);
    dbms_output.enable(1000000);
    LOOP
    utl_http.read_line(resp, VALUE, TRUE);
    dbms_output.put_line(VALUE);
    END LOOP;
    utl_http.end_response(resp);
    EXCEPTION
    WHEN utl_http.end_of_body THEN
    utl_http.end_response(resp);
    END;
    /
      

  2.   

    我现在是在数据库服务器上操作,不能用ajax,使用数据库该怎么做。使用UTL_HTTP获取网页内容网上有很多例子,并不是我想要的,我想要的是如何给WEB服务发消息通知。
      

  3.   

    UTL_HTTP的,我觉得关键在于组什么样的包,WEB端可以识别,对吧?
    你能不能通过别的JAVA程序,往你的WEB端发个正常的包,用工具在WEB端截获一下,看看发过来的数据包,整体是什么样子的。肯定有包头包体两部分。
    然后按照包头包体,在数据库端组个类似的包。我在原来公司按照上述方法写过一段小代码,但是现在找不到了。另外,用UTL_TCP不能实现么?必须是HTTP协议的么?