自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 postgresql数据库使用AES加解密和java使用AES加解密不一致的问题

       公司内部的P2P平台由于监管,进行了一系列不合规项的整改。其中有一条就是要对数据库中一些比较敏感的信息进行加密,比如:手机,邮箱,身份证,银行卡之类的。解决方案是,在整个过程,查询的时候在java服务端进行解密,插入和更新的时候在java服务端进行加密。数据库端则存放加密后的信息。本来只需要考虑java服务端加解密后能保持一致即可,但是为了方便某些在数据库端进行运维的人能使用sq...

2018-05-14 11:20:44 3913 1

原创 网络协议学习笔记

       网络学习的学习笔记,记录一些学习要点。1.网络的五层模型:从下到上 :物理层,链路层,网络层,传输层,应用层。 2.物理层:物理层面把电脑连接起来:可以是光纤电缆无线信号之类的,传输0和1。3.链路层:主要是以太网协议,定义了帧,即一组电信号。协议头记录通讯双方MAC地址(硬件网卡的唯一标识,前六位是厂商id,后六位是厂商内部的流水id)以及其他协议信息。MAC地...

2018-04-16 16:54:39 228

原创 dubbo协议报文格式

       dubbo默认采用netty进行TCP通讯。TCP是传输层协议,在应用层,往往会拓展自定义的协议,一是可以处理TCP本身的粘包拆包问题,二是约定通讯过程的其他细节。       所以dubbo默认采用自定义的dubbo协议。文档描述:Dubbo缺省协议采用单一长连接和NIO异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况。缺省...

2017-09-19 10:15:04 3046 1

原创 配合线程池定义可继承的线程变量InheritableThreadLocal

        说到可继承的线程变量,大家可能会想到jdk里的实现java.lang.InheritableThreadLocal。它拥有和线程变量ThreadLocal一样的功能,并且,在当前线程上创建一个新的线程实例Thread时,会把这些线程变量从当前线程传递给新的线程实例。(此时线程变量不再线程安全,需要考虑线程安全问题)InheritableThreadLocal: pu...

2017-08-29 17:09:10 1775

原创 扩展mybatis重写mybatis执行器实现灵活批处理

     在用mybatis作为持久层框架时,有时候会有需要进行批量增删改的操作。百度了一下,大致有两种方法,一种是拼接SQL的方式。类似这样:<insert id="insertList" parameterType="java.util.List" > insert into t_project ( projectid,productid ) values...

2017-08-27 00:41:19 2199

原创 springboot使用undertow作为web容器而引发的中文乱码问题

 先说一下出现这种情况的场景。该场景在使用jetty,tomcat作为容器时是可以正常运行的。首先是表单提交。<form id="submitForm" action="${base}/test/aa.html" method="post"> <input type="hidden" name="userSource" value=&

2017-07-25 11:19:25 6667 3

原创 动态代理在RPC框架中的性能对比

       这几天打算自己写一个RPC框架,参考了阿里的dubbo,微博的motan等框架的设计。在选择代理技术时,dubbo有两种方案,一个是jdk的动态代理,一个JAVAASSIST的字节码生成技术,在dubbo作者梁飞的博客《动态代理方案性能对比》http://javatar.iteye.com/blog/814426中,因为作者在编写服务框架需要用动态代理生成客户端接口的stub,进...

2017-06-04 00:34:51 386

原创 从二进制指令看包装类Integer在编译期处理优化及二进制指令代码解析

      先看一段demo:package com.onlyou;/** * Created by cd_huang on 2017/5/25. */public class Test { public static void main(String args[]) { intTest(); } public static String intTes...

2017-05-25 17:23:55 194

原创 用dubbo直接调用webservice

       场景:他人的服务端暴露的webservice接口,我这边客户端集成了dubbo,所以想用dubbo直接去调用webservice。因为dubbo的官方文档上说dubbo有提供这些功能。      dubbo版本2.3.0以上版本支持。需要在pom里添加依赖,它是基于CXF的frontend-simple和transports-http实现。maven依赖:<depe...

2017-04-24 12:39:34 2511

原创 java增强for循环的原理验证

     在java里,我们是怎么写for循环的代码呢。一般都是用这两种写法:第一种:最传统的for循环写法,for(代码段a;代码段b;代码段c),其中代码段a是初次进入for循环时执行的代码,代码段b是一个boolean的表达式,true则继续执行for循环内容,false则停止for循环,代码段c则是在for循环内部执行完后执行。第二种:针对集合的遍历,for(类型 单个对象:集...

2017-04-14 10:35:12 466

原创 junit 4只是简单的加了一个@Test,程序是怎么跑起来的

    在写测试用例的时候,突然很疑惑,为什么我只是加了一个@Test的注解,就能运行一个程序。我们知道,main方法才是一个java程序的起点。那junit4的测试用例是怎么跑起来的呢。为了解决这个疑惑,我就自己写测试用例debug调试了下。    测试用例如下:package com.onlyou.olyfinance.remote.base;import org.ju...

2017-04-13 23:53:09 1202

原创 java字符串拼接在编译时优化测试

为了验证编译器对于String相关代码的字节码优化,我简单的做了个测试:jdk版本:1.7.0_51 java 用例代码:package com.rsp.shiro;/** * Created by cd_huang on 2017/4/1. */public class StringTest { public static String StaticStrin...

2017-04-01 16:11:40 438

原创 java线程池增强实现

       前两天在开涛的公众号里,开涛聊到一次请求生成唯一的traceId在各个业务系统中传递,然后通过日志收集各个业务服务中的日志,形成一次请求的完整日志。开涛简单的提到了是使用自己实现的线程池增强技术来传递traceId。       我这边系统也有类似的需求。所以我就尝试性地实现了下线程池增强。本来想着既然是增强,第一反应是用代理技术去实现,后来发现不需要代理就可以简单地实现。...

2017-01-19 17:01:26 332

原创 用spring目标对象处理Transaction rolled back because it has been marked as rollback-only

      在使用spring做事务管理时,很多人都会遇到这样一段异常:org.springframework.transaction.UnexpectedRollbackException: Transaction rolled back because it has been marked as rollback-only at org.springframework.transa...

2016-11-07 10:18:40 300

原创 java多线程基础知识

在大学的java课本上,或者是一些java理论知识里,都是这样子写着Java多线程的实现的:1、继承java.lang.Thread,并重写它的run()方法。[code="java"]publicclass Thread implements Runnable {...@Override public void run() { if (...

2016-04-30 16:01:07 142

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除