
后端
monkey-jie
这个作者很懒,什么都没留下…
展开
-
初始Netty原理(四)— 序列化
在开发一些远程过程调用(RPC)的程序时,一般都会涉及到对象的序列化和反序列化的问题(因为TCP或UDP这些低层协议只能传输字节流,所以应用层需要将Java POJO对象序列化为字节流才能传输)。对象的序列化方式有以下几种方式:JSON:将Java POJO对象转换成JSON结构化的字符串。一般用于Web应用和移动开发,可读性较强,性能较差。XML:与JSON一样,也是序列化为字符串,...原创 2020-01-05 10:08:32 · 796 阅读 · 0 评论 -
初识Netty原理(三)——解码和编码
在Netty底层读入的是ByteBuf二进制数据,在实际开发中,需要将它解码为Java的POJO对象,处理完业务后,需要将Java的POJO对象编码为ByteBuf二进制数据放进通道中进行传输。这里就需要使用到Netty的解码器和编码器。Decoder原理和使用原理Netty中的解码器都直接或间接地实现了入站处理适配器,所以在使用时,直接继承解码器就行,而不需要再去实现处理适配器。在继承解...原创 2020-01-05 10:07:53 · 900 阅读 · 0 评论 -
分析堆栈信息封装一个SLF4J的静态类
前言当我们在使用日志框架的时候,每个类都要通过工厂方法获取一个日志对象来打印日志,感觉太麻烦了。所以想着去封装一个日志静态类。但是问题是封装的那个静态日志类打印出的类信息都是日志类自己,这肯定不是我们想要的啊,我们需要的是当前调用打印日志的这个类的信息啊。开始思考我们发现平时使用的Logback等日志框架能准确捕获源代码的所在的类、方法、行。但java并没有提供相应的方法,这似乎很神奇。其实...原创 2019-12-11 20:12:27 · 542 阅读 · 1 评论 -
springboot+mybatis最新版注解配置实现CURD
最近开始学后端,然后直接上手了springboot+mybatis。然后就实现了一个小例子,花了我整整一天时间。在这做个小记录,也给在用最新版的同学一个参考。springboot整合mybatis时,我用的是mybatis3.x最新版的注解方式配置的,这样实现的接口看起来更简单点(确实简单点)。建项目啥的我在这就不说了,直接上主要配置吧。applicaltion.properties的配置:s...原创 2019-02-28 20:04:18 · 374 阅读 · 0 评论 -
mybatis的pagehelper分页插件详解
一、引入分页插件引入分页插件有下面2种方式,推荐使用 Maven 方式。1、引入jar包:你可以从下面的地址中下载最新版本的 jar 包https://oss.sonatype.org/content/repositories/releases/com/github/pagehelper/pagehelper/http://repo1.maven.org/maven2/com/githu...转载 2019-03-04 21:25:49 · 971 阅读 · 0 评论 -
拦截器返回false造成的跨域问题
因为项目后端是重写了WebMvcConfigurer,然后添加的跨域请求。添加拦截器之后,根据token信息返回状态响应码并且preHandle返回的是false。熟悉拦截器的可知,preHandle返回false后会终止请求,也就是说后面配置的跨域方法不起作用了,这也就造成了前端的跨域问题。所以需要在拦截器中配置跨域请求才能解决。代码如下:public class TokenIntercep...原创 2019-08-26 09:26:23 · 2381 阅读 · 2 评论 -
Windows中启动rabbitmq主机名报错
记录一个被自己坑死的问题,,计算机名。。哥哥们千万不要命名为中文,,,会把自己坑死的,还不知道咋死的。今天在Windows安装rabbitMQ的时候,好像一切正常的样子。启动的时候,一直启动不了。emmm,报错:ERROR: epmd error for host neighbours:: nxdomain (non-existing domain)第一眼一看,这不是主机名有问题嘛,然后马上...原创 2019-10-08 09:50:12 · 1320 阅读 · 0 评论