04 2020 档案
mybatis插入值为空时需要制定类型
摘要:在执行SQL时MyBatis会自动通过对象中的属性给SQL中参数赋值,它会自动将Java类型转换成数据库的类型。而一旦传入的是null它就无法准确判断这个类型应该是什么,就有可能将类型转换错误,从而报错。 要解决这个问题,需要针对这些可能为空的字段,手动指定其转换时用到的类型。 一般情况下,我们没有 阅读全文
posted @ 2020-04-27 21:30 sidesky 阅读(1394) 评论(0) 推荐(0)
NoClassDefFoundError
摘要:NoClassDefFoundError错误发生的原因 NoClassDefFoundError错误的发生,是因为Java虚拟机在编译时能找到合适的类,而在运行时不能找到合适的类导致的错误。例如在运行时我们想调用某个类的方法或者访问这个类的静态成员的时候,发现这个类不可用,此时Java虚拟机就会抛出 阅读全文
posted @ 2020-04-26 15:18 sidesky 阅读(225) 评论(0) 推荐(0)
mybatis动态sql中的两个内置参数(_parameter和_databaseId)
摘要:mybatis动态sql中的两个内置参数(_parameter和_databaseId) <!-- mybatis动态sql的两个内置参数 不只是方法传递过来的参数可以被用来判断,取值 mybatis默认还有两个内置参数 _parameter:代表整个参数 单个参数:_parameter就是这个参数 阅读全文
posted @ 2020-04-23 16:04 sidesky 阅读(535) 评论(1) 推荐(0)
Java位运算在程序设计中的使用:位掩码(BitMask)
摘要:在Java中,位运算符有很多,例如与(&)、非(~)、或(|)、异或(^)、移位(<<和>>)等。这些运算符在日常编码中很少会用到。 在下面的一个例子中,会用到位掩码(BitMask),其中包含大量的位运算。不只是在Java中,其他编写语言中也是可以使用的。 例如,在一个系统中,用户一般有查询(Se 阅读全文
posted @ 2020-04-18 22:20 sidesky 阅读(469) 评论(0) 推荐(0)
基于netty的聊天室(保持和获取客户端channel)
摘要:package chatroom; import io.netty.channel.Channel;import io.netty.channel.ChannelHandlerContext;import io.netty.channel.SimpleChannelInboundHandler;im 阅读全文
posted @ 2020-04-18 16:43 sidesky 阅读(1129) 评论(0) 推荐(0)
Netty自定义协议半包编解码
摘要:1.自定义协议客户端与服务器收发逻辑 Netty中自带了多种编解码器,在项目中更常用的是自定义协议进行通信,此时需要自行处理 半包问题,通过继承ByteToMessageDecoder可以方便的解决这个问题。 服务器代码: Server main: public class SocketServer 阅读全文
posted @ 2020-04-18 16:36 sidesky 阅读(664) 评论(0) 推荐(0)
位运算基础
摘要:开发领域因为与硬件的联系更紧密,所以位操作运算应用的更普遍。Java 因为面向对象的特性很多时候不需要接触位操作,但是在某些特定场景下,巧妙运用位操作,能够起到非常高效的的表现。这篇博文不谈应用,只详细讲解与位操作有关的知识点。 基础大讲堂所有数值都是2进制软件开发者都知道 10 进制、16 进制、 阅读全文
posted @ 2020-04-18 16:09 sidesky 阅读(364) 评论(0) 推荐(0)
JAVA加密系列(四)- 位运算加密(异或加密)
摘要:位运算介绍程序中的所有数在计算机内存中都是以二进制的形式储存的。位运算就是直接对整数在内存中的二进制位进行操作。位运算虽说是语言的基础,但是应用层基本很少有涉及到此,很多开发同学可能了解的不是蛮清楚,本文只对算法用的位运算做一个简单介绍,其他运算符将一笔带过,感兴趣的可以在好好的深入学习一下 "^" 阅读全文
posted @ 2020-04-18 16:03 sidesky 阅读(924) 评论(0) 推荐(0)
位运算基础
摘要:基础内容简介 在做转换之前先要明确几个简单的概念。首先本文是以java为语言,以int为例子。 long数据类型在原理上是一致的。 1 int 在java中是32位, byte是8位。 2 原码,反码,补码简介 原码:就是二进制码,最高位为符号位,0表示正数,1表示负数,剩余部分表示真值。 反码:在 阅读全文
posted @ 2020-04-18 16:00 sidesky 阅读(178) 评论(0) 推荐(0)
负载均衡——LVS DR模式
摘要:背景 相比于nginx只能用于7层负载均衡,LVS就比较强大了,能在4层做负载均衡。而且性能和稳定性上LVS也比较占优,毕竟是合入内核模块,不稳定肯定不行。 视频介绍:https://v.youku.com/v_show/id_XMzM0Nzk0MjU2.html 关于LVS LVS通过工作于内核的 阅读全文
posted @ 2020-04-17 16:45 sidesky 阅读(611) 评论(0) 推荐(0)
Java之BigDecimal详解
摘要:一、BigDecimal概述 ​ Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数,但在实际应用中,可能需要对更大或者更小的数进行运算和处理。一般情况下,对于那些不需要准确计算精度的数字,我 阅读全文
posted @ 2020-04-17 14:26 sidesky 阅读(402) 评论(0) 推荐(0)
Spring AOP代理对象创建流程
摘要:Spring AOP初始化的起点是在bean初始化流程后置处理中。 /** * bean的初始化流程 */ protected Object initializeBean(final String beanName, final Object bean, @Nullable RootBeanDefi 阅读全文
posted @ 2020-04-17 11:24 sidesky 阅读(1619) 评论(0) 推荐(0)
spring aop切面不生效
摘要:由于<aop:aspectj-autoproxy proxy-target-class="true"/>和<bean class="org.springframework.aop.aspectj.annotation.AnnotationAwareAspectJAutoProxyCreator"/> 阅读全文
posted @ 2020-04-17 10:33 sidesky 阅读(2091) 评论(0) 推荐(0)
aspectj-autoproxy Controller未生效解决方案
摘要:本周做业务需求,需要对api的响应时间做监控。第一想法是在需要监控的api里面答应日志,记录care的信息,这样的最大问题就是不容易扩展,需要在每个api里面添加几乎相同的代码。当时,Java的通用做法是切片,利用Java语言提供的反射能力,结合spring 的三大特性之一的aop(面向切面编程)思 阅读全文
posted @ 2020-04-17 09:46 sidesky 阅读(750) 评论(0) 推荐(0)
jvm参数分类
摘要:jvm参数分类 根据jvm参数开头可以区分参数类型,共三类:“-”、“-X”、“-XX”, 标准参数(-):所有的JVM实现都必须实现这些参数的功能,而且向后兼容; 例子:-verbose:class,-verbose:gc,-verbose:jni…… 非标准参数(-X):默认jvm实现这些参数的 阅读全文
posted @ 2020-04-13 11:41 sidesky 阅读(308) 评论(0) 推荐(0)
dubbo优雅停机
摘要:服务提供方停止时,先标记为不接收新请求,新请求过来时直接报错,让客户端重试其它机器。然后,检测线程池中的线程是否正在运行,如果有,等待所有线程执行完成,除非超时,则强制关闭。服务消费方停止时,不再发起新的调用请求,所有新的调用在客户端即报错。 然后,检测有没有请求的响应还没有返回,等待响应返回,除非 阅读全文
posted @ 2020-04-09 19:37 sidesky 阅读(974) 评论(0) 推荐(0)
Dubbo 协议注意项
摘要:Dubbo缺省协议采用单一长连接和NIO异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况。 缺省协议,使用基于netty3.2.2+hessian3.2.1交互。 连接个数:单连接 连接方式:长连接 传输协议:TCP 传输方式:NIO异步传输 序列化:Hes 阅读全文
posted @ 2020-04-09 17:27 sidesky 阅读(207) 评论(0) 推荐(0)
dubbo provider
摘要:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 阅读全文
posted @ 2020-04-09 16:17 sidesky 阅读(202) 评论(0) 推荐(0)
查找java_home的安装路径
摘要:JAVA_HOME设置 首先查找java_home的安装路径 我们执行以下命令查看 /usr/libexec/java_home -V 阅读全文
posted @ 2020-04-07 17:17 sidesky 阅读(5418) 评论(0) 推荐(0)
[转]Dubbo admin在JDK1.8环境运行报Invalid property 'URIType' of bean class
摘要:在虚拟机上部署dubbo-admin的时候报错: [java] view plain copy ERROR context.ContextLoader - Context initialization failed org.springframework.beans.factory.BeanCrea 阅读全文
posted @ 2020-04-03 16:51 sidesky 阅读(354) 评论(0) 推荐(0)
Java分布式跟踪系统Zipkin(一):初识Zipkin
摘要:所有博文均在个人独立博客http://blog.mozhu.org首发,欢迎访问! 在2010年,谷歌发表了其内部使用的分布式跟踪系统Dapper的论文,讲述了Dapper在谷歌内部两年的演变和设计、运维经验。Twitter也根据该论文开发了自己的分布式跟踪系统Zipkin,并将其开源。论文地址:h 阅读全文
posted @ 2020-04-01 15:52 sidesky 阅读(660) 评论(0) 推荐(0)