![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JxBrowser经验
JxBrowser实践及经验
玄翼猫
七岁打猛虎,九岁斩蛟龙
展开
-
个人项目PowerOfLengedJxBrowser-通过注解处理Js与Java交互(二)
注解扫描器设计先细分一下设计。1、需要考虑的事:注解对象如何保存,动态引入的jar包如何加载我定义了一个叫AnnoRepertory的单例类,用于保存注解扫描器所需的配置和数据。2、怎样知道声明了注解的类在哪里?递归扫描整个项目肯定是下下策。我们可以主动传入包名,告知程序要扫描哪些包,加速程序启动速度。这里我在AnnoRepertory中定义一个属性做配置3、我们可能会将某些模块的代码打包成jar或者引入第三方jar,它们该怎么处理?我好高骛远的考虑可以将模块以jar包的形式导入原创 2020-10-02 16:59:45 · 484 阅读 · 0 评论 -
个人项目PowerOfLengedJxBrowser-通过注解处理Js与Java交互(一)
PowerOfLengedJxBrowser项目目前处于暂停状态,它是一个半成品,也不知什么时候再启动。在做Java和Js交互时,需要写jsObject.setProperty("Test",new xxxx());这样的代码注入Java对象。写一两个还好,写多了,不免有些麻烦。而且,一次注入多个对象,在启动时,很可能出现Js调用Java方法时,对象还没加载完成从而报错。于是,我通过注解设计了一个工具类去统一处理Java和Js交互。在使用springmvc和springboot开发网站项目.原创 2020-10-02 16:54:48 · 446 阅读 · 0 评论 -
JxBrowser-JS调用和AJAX数据监听
不管是用Jcef还是JxBrowser,很多时候我们的目的并不是为公司开发应用,而是为了方便自己做些不太善良的事,比如说js脚本注入。通过JS脚本注入,我们可以丰富已有的网页上的功能。执行网页JS的代码也很简单:browser.executeJavaScript("document.title ='My title';");但是很多情况下,JS脚本是混淆过的,很难分析。分析完后,东来西去在代码的汪洋里找自己需要的,好不容易才写出一个注入脚本。有时可能仅仅是为了在某个按钮点击完成后执行自原创 2020-10-02 16:50:01 · 1814 阅读 · 0 评论 -
JxBrowser-JS与JAVA代码交互及碰到的问题
JS和Java交互可以说是软件的灵魂,JxBrowser调用Java方法很简单。参照官方Demo:browser.addScriptContextListener(new ScriptContextAdapter() { @Override public void onScriptContextCreated(ScriptContextEvent event) { Browser browser = event.getBrowser(); JSValue原创 2020-10-02 16:45:57 · 1214 阅读 · 0 评论 -
JxBrowser右键菜单位置偏移
参照demo写完右键菜单,发现菜单位置与鼠标隔着一定的距离。因为很久以前在使用VB开发屏幕取色器时碰到过类似的问题,我猜测是win10屏幕缩放的问题(用win7系统的时候没碰到过这样的问题)。桌面右键,选择“显示设置”,发现当前的缩放比例是125%,于是把坐标乘以125%,右键菜单位置正常。之后尝试使用JAVA调用windows API去获取缩放比例,折腾了一阵,发现获取的屏幕DPI值是120,和我想要的125有点差距。(DPI是什么?自行百度)由于对DPI的概念不熟,一直以为DPI就.原创 2020-10-02 16:42:54 · 1060 阅读 · 0 评论 -
JxBrowser使用心得和带中文翻译的文档分享
在被Jcef的时不时卡死折磨之后,我开始了翻译JxBrowser文档的旅程(非手工翻译)。接触了JxBrowser后,我被它强大的力量所折服,不得不说,比Jcef好太多,让我直接放弃了Jcef。最重要的一点,它不需要JCEF那么多花里胡哨的编译。(用作个人项目确实是个不错的选择)JxBrowser是一个跨平台的Java库,允许将基于Google Chromium的Web浏览器组件集成到Java Swing / AWT / JavaFX应用程序中。使用JxBrowser,您可以将轻量级Swing /原创 2020-10-02 16:39:03 · 4401 阅读 · 1 评论