java怎么调用火狐浏览器来实现系统消息通知

主要实现为系统中的用户推送一条通知消息,原本构想写一段js,利用ajax每隔1分钟检查数据库有无新数据,有新数据则调用当前浏览器(也可为某一特定浏览器,比如firefox... 主要实现为系统中的用户推送一条通知消息,原本构想写一段js,利用ajax每隔1分钟检查数据库有无新数据,有新数据则调用当前浏览器(也可为某一特定浏览器,比如firefox)的通知功能,在屏幕边角显示一条通知消息,告诉用户有未处理事物。关键是要怎么实现调用浏览器的通知功能?实在没分了。。希望有人不吝赐教
谢谢大牛们的积极援助,表示灰常感谢
展开
 我来答
火狐
2014-07-29 · Firefox,最快最安全的上网体验
火狐
Mozilla Firefox火狐浏览器,是一款开放安全的开源浏览器,全球拥有5亿用户。
向TA提问
展开全部
  尊敬的用户,您好!很高兴为您答疑。
  您说的那种每隔一段时间自动查询可以称之为主动请求,这样的功能与一般的js执行不存在任何区别,您利用js提示框即可实现该需求。(可以利用jquery的弹窗组件)。但是因为浏览器安全机制的问题,您的js是无法驱动到浏览器API的消息提示的,而java作为动态语言,在此模式下运行于服务器端,对于驱动客户端就更加是无能为力了。要想实现您的需求,您还可以考虑采用长轮询的方式,此模式相对于您这样的自动循环理论上对于服务器的负载压力稍小。
  希望我的回答对您有所帮助,如有疑问,欢迎继续咨询我们。
更多追问追答
追问
您好,虽然问题得到解决了,但是我对您说的这种方式也很好奇,能说明一下长轮询的方式是什么吗
追答

这方面内容展开说就多了,给你复制点资料吧!比较的是HTTP协议下的几种及时交互实现机制的优缺点。

轮询:客户端定时向服务器发送Ajax请求,服务器接到请求后马上返回响应信息并关闭连接。 
优点:后端程序编写比较容易。 
缺点:请求中有大半是无用,浪费带宽和服务器资源。 
实例:适于小型应用。

长轮询:客户端向服务器发送Ajax请求,服务器接到请求后hold住连接,直到有新消息才返回响应信息并关闭连接,客户端处理完响应信息后再向服务器发送新的请求。 
优点:在无消息的情况下不会频繁的请求,耗费资源小。 
缺点:服务器hold连接会消耗资源,返回数据顺序无保证,难于管理维护。 
实例:WebQQ、Hi网页版、Facebook IM。

长连接:在页面里嵌入一个隐蔵iframe,将这个隐蔵iframe的src属性设为对一个长连接的请求或是采用xhr请求,服务器端就能源源不断地往客户端输入数据。 
优点:消息即时到达,不发无用请求;管理起来也相对方便。 
缺点:服务器维护一个长连接会增加开销。 
实例:Gmail聊天

Flash Socket:在页面中内嵌入一个使用了Socket类的 Flash 程序JavaScript通过调用此Flash程序提供的Socket接口与服务器端的Socket接口进行通信,JavaScript在收到服务器端传送的信息后控制页面的显示。 
优点:实现真正的即时通信,而不是伪即时。 
缺点:客户端必须安装Flash插件;非HTTP协议,无法自动穿越防火墙。 
实例:网络互动游戏。


更多内容请移步阅读:Web 通信 之 长连接、长轮询(long polling)

百度网友84c11da
2014-07-29 · TA获得超过1108个赞
知道小有建树答主
回答量:695
采纳率:100%
帮助的人:416万
展开全部

浏览器通知功能是内部实现的,通过java没办法调用。 只能通过js

js的代码:

function notifyMe() {
  if (!("Notification" in window)) {
    alert("This browser does not support desktop notification");
  }

  else if (Notification.permission === "granted") {
    var notification = new Notification("Hi there!");
  }

  // Otherwise, we need to ask the user for permission
  // Note, Chrome does not implement the permission static property
  // So we have to check for NOT 'denied' instead of 'default'
  else if (Notification.permission !== 'denied') {
    Notification.requestPermission(function (permission) {

      // Whatever the user answers, we make sure we store the information
      if(!('permission' in Notification)) {
        Notification.permission = permission;
      }

      // If the user is okay, let's create a notification
      if (permission === "granted") {
        var notification = new Notification("Hi there!");
      }
    });
  }

  // At last, if the user already denied any notification, and you 
  // want to be respectful there is no need to bother him any more.
}


html

<button onclick="notifyMe()">Notify me!</button>
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式