/给商品详情添加水印 public abstract class WaterMarkUtil { //商品详情一般都是富文本也就是html内容,里面会有很多图片 //给图片添加水印就是在图片的url拼上水印地址,例如 http:xxx.a.jpg并上水印后http:xxx.a.jpg?x-oss-process=img/xxxxxx public static String addWaterMark(String content,String markUrl){ StringBuilder sb = new StringBuilder(); if(StringUtils.isBlank(content) || StringUtils.isBlank(markUrl)) { return content; } Document document = Jsoup.parse(content); //解析成xml或者html对象 if(null==document){ return content; } //获取所有的img元素 Elements imgs = document.select("img"); if(null==imgs || imgs.size()==0){ return content; } //替换为水印图片 for (Element img : imgs) { String picUrl = img.attr("src"); if(StringUtils.isBlank(picUrl)){ continue; } sb.append(picUrl).append("?").append(markUrl); img.attr("src",sb.toString()); sb.delete(0,sb.length()); } return document.toString(); } }