在被Jcef的时不时卡死折磨之后,我开始了翻译JxBrowser文档的旅程(非手工翻译)。

接触了JxBrowser后,我被它强大的力量所折服,不得不说,比Jcef好太多,让我直接放弃了Jcef。最重要的一点,它不需要JCEF那么多花里胡哨的编译。(用作个人项目确实是个不错的选择)

JxBrowser是一个跨平台的Java库,允许将基于Google Chromium的Web浏览器组件集成到Java Swing / AWT / JavaFX应用程序中。使用JxBrowser,您可以将轻量级Swing / JavaFX组件嵌入到Java应用程序中,以显示现代网页,支持最新的Web标准,如HTML5,CSS3,JavaScript等。

这是他官网的描述:JxBrowser可以使用HTML + CSS + JavaScript构建Java桌面应用程序UI。这意味着您可以使用任何现代HTML5 UI工具包(如easyui,bootstrap)来构建用户界面友好的Java桌面应用程序。您可以解雇Swing/AWT开发人员,因为HTML + CSS + JavaScript开发人员可以构建Java应用程序的GUI,它大大降低了Java项目开发的成本。

(Swing/AWT开发工程师:???)

(注:以上翻译内容请自行对照谷歌翻译,不保证其真实性)

获取JxBrowser的最新版本:JxBrowser 6.24.3https://jxbrowser-support.teamdev.com/release-notes/2020/v6-24-3.html (英文看不懂?谷歌浏览器右键,翻译成中文)

截止本文发布日期,6.x最新版本是2020年3月16号的6.24.3。

相关资料均可在百度云盘获取(开发文档[英文原文档,带中文翻译的文档],带中文翻译的帮助文档(来源:Solutions : JxBrowserhttps://jxbrowser.support.teamdev.com/support/solutions),所需的Jar(6.24.3),Demo。因为我最早接触的是6.23.1,所以带中文翻译的开发文档是6.23.1版本):百度网盘 请输入提取码https://pan.baidu.com/s/1P7gMI8-0Bi8aIDE1d4C0ng 提取码: k6xp --来自百度网盘超级会员v4的分享

文档资料CSDN下载地址:JxBrowser含中文翻译的开发文档和帮助文档.rar_jxbrowser使用文档-Java文档类资源-CSDN下载https://download.csdn.net/download/xymmwap/12909790 (下载需要几十积分,C**N暗改积分有点**)

开发文档用于写程序时查找类/方法的用法,帮助文档用于入门、进阶、删库跑路等。建议先把帮助文档看一遍,照着例子写一遍。

开源了个人项目供大家参考(需添加许可证信息才能正常运行,许可证怎样获得?百度一大堆。JxBrowser官网可以申请30天试用),功能和PowerOfLengedJcef差不多【含 脚本管理,代码模板生成器,JxBrowser帮助文档】:

github:GitHub - lieyanfeimao/PowerOfLongedJxBrowser: 项目使用JxBrowser+easyui开发,内置帮助文档。如需运行项目,请自行去JxBrowser官网获取许可证https://github.com/lieyanfeimao/PowerOfLongedJxBrowser.git
码云:PowerOfLongedJxBrowser: 项目使用JxBrowser+easyui开发,内置帮助文档。如需运行项目,请自行去JxBrowser官网获取许可证https://gitee.com/edadmin/PowerOfLongedJxBrowser.git

因为JxBrowser已经提供了详细的Demo,这里我没有像Jcef一样去写个Demo工程了。

本文使用的Jxbrowser版本是:jxbrowser-6.24.3

因为优秀,所以它并不免费,请自行想办法获取许可证。如果它能帮到你,而你也资金充裕,建议购买正版。(钱是个好东西)

优点:

视频网站播放视频需要7.x版本(猜测是各大视频网站弃用了Flash,导致6.x版本不能播放各大视频网站的视频),支持Java与JS交互,支持ajax数据监听。总之,牛的一匹。

我很喜欢这种JAVA和JS交互的方式,例如:var a=Java.test();

瑕疵:

个人觉得不友好的地方,对iframe页面操作不甚方便,使用开发者工具[Debug模式]需要连接谷歌服务器(因为防火墙在,连不上),开发者工具很怪,操作没谷歌浏览器的方便。Jcef在这两点上做的就比较好。

另外,经过长时间沉淀,JxBrowser会在C盘下会生成大量缓存/数据文件,很容易撑爆磁盘。请参照帮助文档 文献资料(Documentation)>浏览器引擎(Browser Engine)>清除缓存(Clearing Cache) 进行处理

主要类介绍

先大概介绍一下常用的类,免得写代码的时候一脸懵逼(讲我用过的吧)。相关类具体的说明请查看开发文档。

Browser:浏览器主类,处理浏览器的相关操作,如执行JS、监听事件等等,是一个非常重要的类。当你对浏览器做一些设置,如监听事件、前进后退等,可查阅此类的文档。它位于:com.teamdev.jxbrowser.chromium

BrowserContext:描述浏览器实例的上下文。提供指向将存储Chromium数据文件(如cookie,历史记录,缓存)的目录的路径,并提供对上下文级别功能(如NetworkService)的访问。具有相同BrowserContext的两个Browser实例将共享会话cookie和缓存文件。这个类我在同时启动多个应用时用到,因为各个应用不能共用同一个数据文件目录,所以,我用它为应用分配不同的数据文件目录。

BrowserPreferences:浏览器实例和全局库首选项。设置浏览器的启动参数等。一般在程序启动时设置,也可以使用Browser的setPreferences()方法设置

NetworkService:提供对网络级功能的访问。这个类很有用,可以用它实现对网络请求的操作。我试了下,用了它后程序比较不稳定。

JS开头的类:对JS的相关处理

com.teamdev.jxbrowser.chromium:监听器,事件

com.teamdev.jxbrowser.chromium.dom:操作DOM对象的接口

com.teamdev.jxbrowser.chromium.swing:用于swing下的一些handler实现类,例如监听网页返回数据使用的是DefaultNetworkDelegate

官方Demo里面已经有了各种骚操作的用法,这里我只说些常用的和一些踩的坑。(官方Demo在哪?在百度云盘里)

JxBrowser使用心得和带中文翻译的文档分享相关推荐

  1. Spring-Core 中文翻译+总结文档(上)

    Spring - Core 引言 使用版本 5.2.5RELEASE 这一部分的文档覆盖了几乎所有的Spring 框架的技术,Spring框架最主要的控制反转(IOC容器),在对Spring框架的IO ...

  2. Spring-Core 中文翻译+总结文档(下)

    Spring - Core 接着上文 3.验证,数据绑定和类型转换 考虑将验证作为业务逻辑是有利有弊,Spring提供了一种验证(和数据绑定)设计,但并不排除其中任何一个. 具体来说,验证不应与Web ...

  3. 2022.12四级真题第1套听力原文(带中文翻译)共8页

    2022.12四级真题第1套听力原文(带中文翻译)共8页 [00:00.00]College English Test Band Four<ch>大学英语四级考试 [00:02.74]Pa ...

  4. 中文翻译泰文难吗?如何做好泰文翻译?

    泰文翻译是用泰语来表达另一种语言或用另一种语言来表达泰语的活动.泰文翻译既包括中译泰翻译.泰译中翻译,也包括泰语与其它语言之间的转译活动.那么,中文翻译泰文难吗?如何做好泰文翻译? 其实"泰 ...

  5. 中文翻译韩文软件有哪些?

    关于中文翻译韩文的软件对我们日常生活中可能不会起到什么作用,但是在办公中往往会起到很大的作用特别是对于一些外贸公司而言,翻译软件是他们经常会使用到的办公工具,那么中文翻译韩文的软件有哪些呢?下面的俩种 ...

  6. Qt中文翻译(官方文档,界面,工具等)集锦

    Qt中文翻译(官方文档,界面,工具等)集锦 GitHub - jiangcaiyang/QtCreator-Translation-CN: This repository is trying to f ...

  7. (转载)中文Appium API 文档

    该文档是Testerhome官方翻译的源地址:https://github.com/appium/appium/tree/master/docs/cn官方网站上的:http://appium.io/s ...

  8. 中文 Appium API 文档

    该文档是Testerhome官方翻译的 源地址:https://github.com/appium/appium/tree/master/docs/cn 官方网站上的:http://appium.io ...

  9. 快速翻译PDF文档的免费方法

    您还在为翻译PDF文档而烦恼吗? 或者您通过某度搜索出来的文档翻译网站或者使用某些文档软件都需要注册会员或者充钱呢? 而且好多既不安全还不一定靠谱. 本文介绍的这种方法希望能够为您解决烦恼.此方法不涉 ...

  10. 怎么翻译Word文档?这里有Word文档翻译小妙招

    Word文档你会翻译嘛?文字翻译对大家来说很简单,直接进行释义就好了,但是怎么翻译Word文档呢?今天小编就要带大家一起来了解下Word文档翻译的小妙招,感兴趣的不妨来看看,说不定哪天你真的会用到哦! ...

最新文章

  1. 市政管网检测机器人收费标准_管道无损CCTV检测:复杂的地下管网工作,其实可以交给机器人来做...
  2. 对话创新工场陶宁:AI步入深水区下的投资逻辑
  3. mysql 多线程 一致性_常见缓存数据库一致性方案(建议收藏)
  4. 公共基础选择题前10t
  5. addcontorl error...viewstate relative
  6. 【EventBus】EventBus 源码解析 ( 注册订阅者 | 注册订阅方法详细过程 )
  7. CodeForces - 1293D Aroma's Search(暴力)
  8. 如何使div像星星一样,简易demo,授人以鱼,自行更改完善
  9. oracle视图查询数据慢,8i查询DBA_FREE_SPACE视图极慢的问题
  10. linux脚本多个条件比较大小,shell脚本-比较两个整数大小
  11. (转)nmake学习笔记
  12. python怎么使用-如何使用 Python 开始建立
  13. Sicily 1029. Rabbit 解题报告
  14. 彼得·德鲁克 : 管理自己
  15. 小弟需要一个能显示播放音频的各频率音量大小(不知道叫什么东东)的控件~!...
  16. c语言莫莫加等于莫莫什么意思,莫莫Momo
  17. 怎么对BI报表展开测试?
  18. python如何创建一个新的文件夹
  19. 轻松高效搭建可视化数据网站
  20. 10 种信号说明你太长时间的码不停蹄

热门文章

  1. java开发系统架构_Java开发:ECP系统J2EE架构开发平台
  2. 无法读源文件或磁盘的处理
  3. C - A very hard mathematic problem (暴力枚举加二分)
  4. 进销存excel_进销存报表还再花钱买软件?别傻了!教你一个Excel函数就能搞定...
  5. 决策树从理论到 Python 实现再到实战,万字长文 + 思维导图.整理
  6. 两个向量的夹角公式_两向量夹角(求两个向量的夹角公式)
  7. mysql的数据库文件在哪里_MySQL数据库文件其具体的存放位置简述
  8. 企业管理软件开发新模式:抛开旧思维,轻松做系统
  9. 计算机vb题库程序代码编写,计算机二级考试.题库-vb程序题
  10. Java的Appium自动化测试教程