![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
Rael_liu
跟.net,java都谈过恋爱,最后娶了php
展开
-
springboot websocket怎么通过shiro验证
shiro有几种认证方式,这里只说JSESSIONID方式,正常http请求JSESSIONID是放在cookie中传过去的,但是websocket貌似不能用header和cookie传递参数,所以只能想到用url传参试了下这种方式:ws://localhost:8730/deploy?jsessionid=43577A8AFB2A95A59BA10AABBD0F6AEB```非常遗憾,不行,只能看源码了,org.apache.catalina.connector.CoyoteAdapter确原创 2020-08-28 12:00:32 · 2146 阅读 · 2 评论 -
常用分布式事务解决方案分析
随着单体应用拆分以及微服务化,互联网公司的分布式事务场景已成常态,关于分布式事务的解决方案也是由来已久,比如Saga、XA、TCC、本地消息表等等,当然也有很多优秀的框架比如ByteTCC、TCC-transaction、EasyTransaction以及最近比较火的Seate,那么如何在众多方案中选择适合自己的呢,接下来我们分析下各方案的原理以及优缺点。一、XAXA协议分为两段提交和三段提交。准确讲XA是一个规范、协议,它只是定义了一系列的接口,只是目前大多数实现XA的都是数据库或者MQ,所以原创 2020-06-04 10:16:31 · 1147 阅读 · 0 评论 -
切面实现Dubbo请求日志以及全局异常处理
一、背景项目中经常会看到在所有的Rpc接口实现中记录请求参数,以及try catch,每个方法都来一次,看着就不舒服,类似下面这段代码public CloudServerResponse<Boolean> updateExpressInfo(SendAppraisalExpressParam sendAppraisalExpressParam) { log.info("updateExpressInfo:{}",JSON.toJSONString(sendAppraisal原创 2020-05-13 17:43:02 · 2580 阅读 · 0 评论 -
java全链路日志实现
java全链路日志实现什么是全链路日志实际项目架构具体实现要达到的效果合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入什么是全链路日志在线上项目运行期间,经常会出现各种莫名奇妙的bug,而且一个请求往往会经过多个项目的接口调用,比如电商中原创 2020-05-13 16:43:52 · 3805 阅读 · 2 评论 -
docx4j word转pdf解决中文乱码问题(包括宋体(正文))
docx4j 是个非常好用的docx操作包,我主要用来做docx转pdf,但是发现中文会有乱码,原因是因为word里面的中文字体名也是中文的,但是从本地字体库里面拿到的字体名是英文的,所以需要做个映射,这里注意如果是Linux,需要安装中文字体,把windows上的字体复制上去就行。后来还发现宋体(正文)和宋体(标题)还是乱码,网上也没找到答案,有人问了,但是没人回答,所以只能自己看日志和调试,...原创 2019-08-14 17:11:10 · 11768 阅读 · 11 评论 -
利用Feign发post请求遇到的坑
背景最近转java,背靠公司java大神,利用spring cloud框架重构现有业务,新手遇坑是常事,也是喜闻乐见的,趟坑能让自己快速的学习成长。 Feign是一个声明式的Web服务客户端,使用Feign可使得Web服务客户端的写入更加方便。 具体的介绍就不多说了,直接看github就好,这里写链接内容 这里主要记录一下利用feign发送post请求时遇到的问题。问题重现...原创 2018-06-19 11:57:20 · 36936 阅读 · 4 评论 -
java 实现PHP unserialize接口,解决中文问题
最近用java重写php diszus的接口,碰到一堆的序列化字符串,如下: a:1:{i:220;a:4:{s:3:”uid”;s:3:”220”;s:8:”username”;s:10:”中国好男人”;s:5:”level”;s:1:”1”;s:6:”online”;i:0;}}试了几个类库后发现对有中文的字符串都会解析成乱码,原因是PHP对中文字符的解析是两个字符,java类库...原创 2018-06-29 15:08:22 · 1809 阅读 · 0 评论 -
java spring统一异常处理——控制器通知
相信很多同学都跟我一样写过这样的代码: 这是一个在java控制器中处理异常的样例,运行起来也没什么问题。唯一的问题就是这有点复杂,这方法会有两种返回值,正常的和异常的,但其实我们通常只想关注正常的,像下面那样: 干净多了,但是异常情况怎么处理呢?spring为我们提供了一个非常方便的异常处理方案:控制器通知(controller advice),这其实是将所有的控制器作为一个切面,利用...原创 2018-05-29 15:16:44 · 956 阅读 · 0 评论 -
lombok @Slf4j注解
背景知道有这么个东西,是因为项目中用到了@Slf4j注解。 lombok库提供了一些注解来简化java代码 官网:http://projectlombok.org/ 查看lombok所有api:https://projectlombok.org/api/overview-summary.html几个常用的 lombok 注解:@Data:注解在类上;提供类所有属性的 gettin...原创 2018-05-24 17:12:52 · 97947 阅读 · 5 评论 -
java项目技术点整理
背景刚来杭州不久,以PHP入职新公司,发现杭州PHP环境实在艰难,全是java的天下,决心再转战java,这对于我来说并不是难事,毕竟我经历过.net, php,java,golang。。。然后再回到java,跟着市场走吧,反正我就是个万金油,哈哈。既然决心再转回java,当然要积极的去做java项目,由于我的积极响应,加上公司也准备转型java,所以最近用java开发了两个项目,主要是s...原创 2018-05-24 15:51:24 · 6757 阅读 · 0 评论 -
spring-boot中拦截器的使用
背景相信很多同行都有过做后台权限管理或者api token登陆态校验之类的经验,我最开始工作的时候就是做OA系统的,印象最深刻的就是角色权限管理,当时经验少,把权限和业务功能做的耦合度非常的高,常常会在一个action的业务逻辑里面加很多的if else来做权限的判断,这是一段痛苦的经历。最近开发的项目也有权限后台,提供出去的api要校验token判断登陆态,想起java应该是有拦截器的功能...原创 2018-05-25 11:20:10 · 839 阅读 · 0 评论