程序员
文章平均质量分 65
傲娇的鲤鱼
少奋斗两年~
展开
-
spring boot中shiro使用自定义注解屏蔽接口鉴权
spring boot整合shrio后,所有接口都需要在鉴权通过后才能使用。某些接口(比如登录接口)是不需要鉴权的,就需要手动配置一下。本文介绍了一种通过自定义注解,实现屏蔽接口鉴权的功能的方法,这样在需要屏蔽接口鉴权的时候,就不用反复修改shiro配置了。...原创 2022-07-05 18:24:36 · 2534 阅读 · 5 评论 -
mybatis-plus代码生成器自动生成lombok模式的实体类
之前使用mybatis-plus的代码生成器的时候,生成的实体类是自带setter和getter方法的。如果想使用lombok,还得自己打上注解,并手动删除这些getter/setter方法。mybatis-plus代码生成器其实是原生支持生成lombok模式实体类的,但是官方文档并没有提及(也可能是我看漏了),实现方法如下 public static void main(String[] args) { // 包配置 PackageConfig pc = new Pac原创 2020-06-05 16:03:42 · 6164 阅读 · 0 评论 -
微信支付开发: InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty
使用WxJava开发包对接微信支付的时候,服务端报错 InvalidAlgorithmParameterException: the trustAnchors parameter must be non-empty。解决办法:服务端原本使用的是openjdk, 换用OracleJDK后就没有这个问题了。 可以用更换sdk的方法暂时顶一下,后续还得接着找找原因。...原创 2020-06-05 15:29:25 · 853 阅读 · 0 评论 -
解决javax.servlet.ServletContext.getVirtualServerName()Ljava/lang/String;
以下方法适用于基于spring boot的应用先看以下报错信息:Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.2019-04-28 17:31:14.186 ERROR 12404 --- [ ...原创 2020-02-06 16:25:50 · 9182 阅读 · 6 评论 -
Address family not supported by protocol family: connect 解决方案
在springboot 使用okhttp请求其他服务的接口时,出现了Address family not supported by protocol family: connect这个异常, 后来把这一块代码单独拎出去运行,是没有任何问题的。后来在StackOverflow上找到了一个可用的解决方案,具体为什么只在springboot环境下出现异常暂时还不太清楚。解决方法VM options...原创 2019-05-27 10:27:10 · 7147 阅读 · 0 评论 -
解决Nginx反向代理不会自动对特殊字符进行编码的问题
问题起因是利用Nginx做反向代理的时候,需要访问如下链接http://192.168.14.141/iserver/services/3D-0524hd/rest/realspace/datas/0524hd/data/path/Tile_+003_+011/Tile_+003_+011_L5_00003.s3m其中192.168.14.141被反向代理到了192.168.14.141:80...原创 2019-06-27 15:20:39 · 13057 阅读 · 3 评论 -
No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
一直都在用idea做springboot项目, 基本都是通过idea的mvn指令进行打包, 今天尝试手动用mvn命令在cmd下打包一个ssm项目的时候, 报了这个错误:No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?意思就是说现在使用的是jre环境...原创 2019-08-30 09:26:19 · 843 阅读 · 0 评论 -
springboot 实体类使用@JsonIgnore属性后无法接收前端参数的完美解决方法
在controller中返回json数据的时候,有时不希望某些属性返回给前端,比如说密码或者一些无用的数据,一般我们会通过给实体属性添加@JsonIgnore注解来避免返回。但是当我们接收前端参数的时候,@JsonIgnore会一并忽略掉setter方法,也就是说前端的传的值将无法注入到实体类属性中。百度到的方法有说在setter上添加@JsonProperty, 在getter上添加@Js...原创 2019-09-25 09:57:20 · 7592 阅读 · 5 评论 -
java实现excel转pdf
基本原理将excel单元格的值读取出来,然后生成一份pdf,并将单元格数据写进去。用到的库 <!-- 写入pdf用的库 --> <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</...原创 2019-10-10 17:47:48 · 1480 阅读 · 2 评论 -
springboot整合websocket出错:Error during WebSocket handshake: Unexpected response code: 200
前端建立websocket链接的时候,控制台打印Error during WebSocket handshake: Unexpected response code: 200,这种情况多半是因为服务端的拦截器出了问题。要知道websocket是基于http的,建立websocket链接的时候也用经过握手,这个握手走的就是传统的http请求(好像不同浏览器实现的细节也不太一样,chrome应该是...原创 2019-04-25 11:08:05 · 21675 阅读 · 0 评论 -
关于springboot集成shiro后遇到的CORS跨域问题
废话不多说,先上解决办法,后边再说原理:自定义MyFormAuthenticationFilterpublic class MyFormAuthenticationFilter extends FormAuthenticationFilter { /** * 在访问controller前判断是否登录,返回json,不进行重定向。 * @param request ...原创 2019-04-14 17:05:30 · 5223 阅读 · 6 评论 -
解决servlet长时间连接数据库时,数据库自动关闭的问题
最近项目部署到服务端后,一开始一切正常,第二天起床再看就没法用了。查询了一下tomcat的日志,发现抛出了com.mysql.jdbc.exceptions.jdbc4.CommunicationsException异常,具体内容为:com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: The last packet successfull原创 2017-12-01 20:31:28 · 1133 阅读 · 0 评论 -
树形递归算法解决一笔画问题(Java)
下面要说的一笔画问题指的并不是经典的欧拉回路或汉密尔顿路径问题 而是我前几天接触的一款小游戏 ↓ 核心算法在下边,前边部分讲的是具体实现(Java)这款游戏的玩法就是从起点(绿色点)出发,一笔画过所有的方块。部分关卡还是有一定的难度的,于是便心血来潮的想了个算法来算出正确路径。大致的思路是比较简单的,无非就是穷举出所有的路径,找到那条经过所有格子的路径。重点在于怎么用程序实现。如果...原创 2018-04-06 19:15:52 · 2178 阅读 · 1 评论 -
整合SSH框架时 关于Hibernate部分的 xxx is not mapped错误的解决方法
这个问题看上去非常简单,就是缺失了对应的实体类,执行hql语句时,hibernate找不到对应的实体对象。大多数要么是配置文件没写好,或者是 hql写成了 ‘from user u’ (混淆了对象名和表名,hql中要写实体对象的名字)。我是采用注解配置的,仔细检查了实体类的注解后,发现改有的都有,按理说应该没毛病,可是为什么就是扫描不到这个实体类呢?折腾了一下午,终于还是在实体类里边发现...原创 2018-07-06 15:44:08 · 665 阅读 · 0 评论 -
关于video-js currentTime()无效的解决办法
最近使用videojs的时候碰到一个需求,更换视频的src后需要让视频跳转到某个位置,按理说使用currentTime()就可以解决,但是在player.src()函数执行后再执行player.currentTime()就会无效。这种情况是因为调用player.src()后视频还没有准备好,所以player.currentTime()无效,解决办法就是等视频准备好后再调用currentTime(...原创 2018-09-20 09:28:04 · 15856 阅读 · 3 评论 -
百度人脸识别私有化部署流程
按照百度官方的文档部署私有化人脸识别服务器的过程中碰到了很多坑,在此整理记录一下。环境操作系统: centos 7.2 (或者ubuntu,版本号尽量和官方一致)GPU : Nvidia GTX 1070 (官方建议使用特斯拉系列的卡, 因为手头上只有1070,所以凑活拿过来也能用。但是服务跑起来之后会有显存泄露的问题,不知道是不是因为用了GTX显卡导致的)CPU : E5-2620V4...原创 2019-01-04 14:52:04 · 4937 阅读 · 7 评论 -
android 摄像头图像数据YUV转Bitmap, 再转Base64
废话不说直接上代码,亲测可用1.YUV数组转Bitmapimport java.io.ByteArrayOutputStream;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.ImageFormat;import android.graphics...原创 2019-03-05 16:07:46 · 2787 阅读 · 1 评论 -
【JAVA】使用vlcj获取网络摄像头(rtsp)图像,支持H.265和H.264
近期项目中需要抽取rtsp流图像进行图像处理,目前网上可以找到的教程中绝大部分使用的是opencv或者javacv,我一开始是采用的javacv方案,但是javacv不支持h265格式,而且对于长时间抽流的逻辑来说,监控抽流状态也比较麻烦,因为网络波动等一些问题导致的抽流中断,也不是很好监控,于是改用了vlcj库重构了抽帧逻辑。VLCJ简介官网:http://capricasoftware.c...原创 2019-03-20 14:29:07 · 8273 阅读 · 9 评论 -
MybatisPlus 数据库字段使用驼峰命名法时碰到的问题
假如有个实体类:class User{ int userId;}按照规范,数据库User表里边对应userId的字段名应该为 user_id。如果数据库的字段名也是userId的话(没有下划线),那么使用MybatisPlus的时候就会碰到映射问题,实际查询的时候默认是查询user_id。解决办法:.properties添加一行配置,关闭驼峰到下划线的映射即可mybatis-p...原创 2019-03-28 10:46:24 · 21370 阅读 · 6 评论 -
CodeMirror 的简单配置
CodeMirror 的简单配置最近有个小项目需要用到在线代码编辑的功能,于是就找到了CodeMirror。虽然功能很强大,但是初次使用的话配置起来还真是无从下手(才不是英语不好)。下面记录一下简单的配置过程。原创 2017-09-13 21:28:43 · 4197 阅读 · 0 评论