标签: Java

23 篇文章

使用Jsoup处理富文本XSS攻击过滤
由于富文本的特殊性,不能一刀切将所有的 HTML 标签转义,但为了防止 XSS 攻击, 又必须过滤掉其中的 JS 代码, 在 Java 中使用 Jsoup 正好可以满足此要求。 Jsoup 采用白名单过滤的方式,只允许配置的白名单标签进行提交,故需要好好整理一下,到底哪些标签是可以使用的。 实现 <dependency> <gro…
thumbnail
开源Java诊断工具Arthas推荐
Arthas 是Alibaba开源的Java诊断工具,初步试用了一下,甚是方便,在生产线上找问题应该比较方便。 Arthas可以帮助你解决什么问题? 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?遇到问题无法在线上 debug,难道只能通过加日…
RestTemplate 跳过SSL证书验证
在使用RestTemplate请求接口的过程中,遇到HTTPS请求又没有证书的情况,只能通过配置来忽略证书验证了 package com.ewei.custom.yto.config import org.springframework.context.annotation.Bean import org.springframework.conte…
Quartz失火指令、补偿执行机制配置
处理规则 调度(scheduleJob)或恢复调度(resumeTrigger,resumeJob)后不同的misfire对应的处理规则如下: CronTrigger withMisfireHandlingInstructionDoNothing不触发立即执行等待下次Cron触发频率到达时刻开始按照Cron频率依次执行withMisfireHand…
解决HttpServletRequest.inputStream复用问题
众所周知,request对象中的inputStream只能读取一次,下次再读就没有了,在一些场景中,这种特性是不适用的:比如需要在拦截器中读取请求体,然后做相关的参数校验,做完校验后请求打到Controller中就读取不到了。 解决的方法很简单,通过HttpServletRequestWrapper将HttpServletRequest对象包装一下…
Java11 部分新特性一览
月26日,Java 11(LTS 长期支持版)如期而至,虽然短期很难投入生产使用(毕竟现在还在用jdk7呢,哈哈哈哈)但是还是非常有必要了解一下相关的特性的。 jshell 使用jshell可以像python交互模式那样直接运行代码 编译 && 运行 简化了javac & java命令 javac Test.java jav…
thumbnail
使用Selenium-Java实现自动化UI测试
安装ChromeDriver https://npm.taobao.org/mirrors/chromedriver/ 下载指定版本的 chromedriver 后,放入 PATH 中。 添加Maven依赖 <dependency> <groupId>org.seleniumhq.selenium</group…
Java代码精简神器Lombok的使用
Java 代码中有很多冗余、臃肿的代码(如:Getter/Setter、构造方法、hashCode 方法等)lombok 是一款 IDE 插件,其专注于消除此类代码,以达到代码简洁高效的目的。它同时提供了 IDEA 以及 Eclipse 相关的插件,本文以 IDEA 为例,做一些相关的示例 准备工作 1)IDEA 中安装相关的插件,如图:…
thumbnail
微信小程序模板消息推送实现案例
模板消息是基于微信的通知渠道,为开发者提供了可以高效触达用户的模板消息能力,以便实现服务的闭环并提供更佳的体验。 想推送模板消息,得满足一些前提条件: 用户在小程序中完成支付后,小程序可以向用户发送模板消息。用户在小程序中有提交表单的行为,小程序可以向用户发送模板消息。 例如:3. 用户在小程序里购买了商品,小程序可以将商品物流的情况,实时发送给用…
Java8 Stream Api使用详解
jdk8发布至今已有几年有余,是一个影响深远且具有革命意义的版本,目前jdk版本已直奔v11.0, 发展之迅速让人始料未及。本文在假设已有 java8 lambda 语法的基础下,通过几个示例,快速上手Stream 流处理相关的 API 使用。 什么是流操作 流操作就是一条流水线,将元素放在流水线上一个个地进行处理: …