热门关键字:
jquery > jquery教程 > jquery教程 > Java PhantomJs完成html图片输出功能

Java PhantomJs完成html图片输出功能

244
作者:管理员
发布时间:2021/3/31 18:55:23
评论数:0
转载请自觉注明原文:http://www.jq-school.com/Show.aspx?id=4333
  i. 背景


  如何在小程序里面生成一张图,分享到朋友圈呢?目前前端貌似没有太好的解决方法,所以只能猥琐的由后端来支持掉,那么可以怎么玩?


  生成图片比较简单


  简单的场景,可以直接用jdk来支持掉,一般来讲也没有太复杂的逻辑


  之前写过一个图片合成的逻辑,利用awt实现: 图片合成


  通用、复杂的模板


  简单的可以直接支持,但复杂一点的,让后端来支持,无疑比较恶心,在github上也搜索了一些渲染html的开源库,不知道是姿势不对还是咋的,没有太满意的结果


  现在对复杂的模板,要怎么支持呢?


  也就是本篇的指南,利用phantomjs来实现html的渲染,支持生成pdf,生成图片,解析dom都ok,接下来则演示下如何结合 phantomjs 搭建一个网页渲染成图片的服务


  ii. 前提准备


  1. phantom.js 安装


  2. java依赖配置


  maven 配置添加依赖


Java PhantomJs完成html图片输出功能



  开动


  主要调用phantomjs来实现html渲染图片的逻辑如下


  测试case


  生成的图片就不贴了,有兴趣的可以直接到我的网站上实测


  iii. 网络实测


  在阿里云服务器上部署了一个简单的web应用,支持了html输出图片的功能;由于买的是乞丐版,用的前端模板又比较酷炫,所以打开较慢。


  操作演示:


  v. 项目


  项目地址:


  quick-media


  quickmedia是一个专注图文,音视频,二维码处理等面向多媒体服务的开源项目


  以上代码经过我们的测试,大家如果还有不明白可需要讨论的可以在下方留言,感谢你对服务器之家的支持。


  原文链接:


  javaweb dbutils执行sql命令并遍历结果集时不能查到内容的原因及处理方法如下所示:


  遍历结果集时只遍历bean对象才会只输出第一行那种内容(第一行是输出了userentity类实例化的对象),所以这里需要 re.getrepotablename() 才能通过对象调用相对应的内容


  这样一来,就可以取到值了


Java PhantomJs完成html图片输出功能



  ps:javaweb之dbutils详细介绍如下所示:


  一、什么是dbutils及作用


  dbutils是apache公司写的。dbutils是java编程中的数据库操作实用工具,小巧简单实用。


  dbutils封装了对jdbc的操作,简化了jdbc操作。可以少写代码。


  1.对于数据表的读操作,他可以把结果转换成list,array,set等java集合,便于程序员操作;


  2.对于数据表的写操作,也变得很简单(只需写sql语句)


  3.可以使用数据源,使用jndi,数据库连接池等技术来优化性能--重用已经构建好的数据库连接对象


  二、dbutils的三个核心对象


  2.1、queryrunner类


  queryrunner中提供对sql语句操作的api.它主要有三个方法:query() 用于执行select,update() 用于执行insert update delete,batch() 批处理。等下下面的会详细的介绍这几种方法的用法。


  2.2、resultsethandler接口


  用于定义select操作后,怎样封装结果集。它总共有9个常用的实现类,下面我会详细的为大家介绍怎么去使用。


  2.3、dbutils类


  它就是一个工具类,定义了关闭资源与事务处理的方法




如果您觉得本文的内容对您的学习有所帮助:支付鼓励



关键字:jquery
友荐云推荐