- 博客(15)
- 收藏
- 关注
原创 SpringBoot Unitest 中Dubbo 占位符的问题
今天在SpringBoot调试了一个第三方模块,而第三方的Dubbo.xml中使用了一些占位符${XXX},最后发现在使用普通@RunWith(SpringJUnit4ClassRunner.class)@SpringBootTest(classes= {FixConventorTest.class})配置根本无法处理XML中占位符,最后定位发现需要在UT中加入@EnableAutoConfiguration才能处理这些占位符...
2020-09-25 15:25:04
352
原创 金三银四程序员面试经
相信广大程序员在这金三银四躁动的季节都投出了自己简历,本人在这个季节也成功收割了3个offer,从年前开始筹划跳槽的机会,自己身处金融IT行业,瞄着的机会无非就是券商,银行。当然我也尝试了下BAT这种大厂,并成功收获了T厂的offer.通过这几个月的求职过程,也谈谈自己一些经验和踩过的坑。 本人的技术栈是C++(5年)与JAVA(2年),所以投出去的简历都是以这两个方向为主,...
2018-04-11 10:20:56
820
原创 Oracle 分页查询的一次Bug
之前有一篇博客讲述,oracle 11g的查询计划的Bug, https://www.cnblogs.com/LinXuDong/p/6077302.html 由于没有走最优查询计划导致查询时间暴涨。昨天自己线上项目也出现了类似的问题,具体语句如下: select * from (SELECT t.*, ROWNUM RN from (sele...
2018-03-21 15:10:17
532
原创 如何在Oracle数据库中查询所有表中含有某一个字段
前几天碰到一个需求,要用在所有用户表中查出某个表中是否含有某个值(不是字段。。。。),琢磨了一个上午,听起来需求有点变态,Oracle是非关系型数据库,在不考虑性能场景下唯一能做的就是全库遍历,假设字段为varchar类型。废话不多说,直接上存储过程:CREATE OR REPLACE procedure QUERY_KEY( keyword in varchar2)as ...
2018-03-20 13:33:18
11664
原创 SpringBoot Mybatis 数据库流式读取优化(二)
还是接着上次文章的话题,流式数据库读取和批量数据获取中,方式各有千秋,流式数据读取可以很大的解决内存不足问题,而批量读取可以方便数据一次性收集,编码方便。但是流式真的比批量数据读取占有性能场景下的优势吗?这两天我通过Jconsle分析了下两种场景GC和堆内存的消耗。流式读取方式:从图中可以看出,Old Gen堆区的内存消耗十分严重,而程序运行16分钟,GC耗时高达33S,这可以看出流式...
2018-03-12 14:56:52
7337
1
原创 SpringBoot Mybatis 数据库流式读取优化。
众所周知的,Mybatis作为一个优秀的ORM框架极大方便了我们对数据库CUID的操作,但是Mybatis对底层JDBC的封装同时也给我们底层调优带来了一些问题,例如前段时间,存在一个这样的业务场景,如果要从数据库当中读取 1000W 条数据来进行处理。也许我们都会考虑采用select limit之类的语句来分批处理,这不乏为一个较好的解决方案。但是我们更期望对读取的数据逐行处理(即流式...
2018-03-06 11:22:22
16703
2
原创 SingleTon与Factory的结合
关于设计模式这个话题大家可能,也许是老话重谈了,很多入门级的程序员也许看过很多关于设计模式的书籍,往往大家都是给出了简答示例来,接下来我从几个工程场景来谈谈,Singleton 的实现手段。 (1)入门级别class DemoSingleTon{ public: static DemoSingleTon* getInstance() { if (m_psIn...
2018-03-02 15:02:24
525
原创 Spring Boot 集成 ActiveMQ ,生成者与消费者,@Configration初始化参数
之前很多人在优快云上写过许多Spring Boot集成ActiveMQ文章,当然Spring IO 上也有对对应的Demo,大多数对JMSTemplate的使用是通过,application.properity来初始化相关参数,下面本人给出通过@Configuration来初始化相关的配置。JMSConfig.java@Configurationpublic class JMSConf...
2018-03-01 15:53:34
1930
原创 从工程角度来谈谈数据库的四个隔离
(1)读取未提交 从字面上的意思来讲,这个应该很好理解,假设 A 事务操作X表在commit 之前,另一个事务B并行执行也操作X表,在A 事务commit之前,B能感受到A事务对X 表的修改(delete ,update之类操作)。这个隔离级别最低,相当于并行事务之间毫无隔离,当然在工程上可能只有对读操作类的存储过程之间具有存在价值。(2)读取已提交 见字如其意,
2018-02-05 16:53:16
209
原创 Mybatis 如何返回Map集合
相信很多使用Mybatis的人都经常使用数据库查询批量数据,然后通过ORM映射到内存当中,一般情况下,Mybatis通过List形式来返回数据,但是有些特殊场景,大家希望返回来的集合通过主键的方式来映射到一个特定HashMap当中,通过研究,我发现通过如下当时可以达到映射效益:DAO层对象: package ems.rm.margindataproxy;import java.util
2018-01-24 14:03:46
16697
2
原创 最小堆的算法工程应用(定时器一)
相信大部分计算机科班出身的人都或多或少的接触过堆排序算法,堆排序的核心思想,我就不做过多的陈诉,其核心思想就是通过建立一个二叉树,将父节点的数据与子节点的数据进行相关比较而做对应的调整。最近在一个项目中想做一个定时器队列,而定时器的插入超时是随机的,这意味着如果在如果定时器管理队列在队列中插入的是几乎均匀分布,思前想后如果用链表来管理这个时间队列当定时器密集超时,那么链表插入效率必然会是O(N),
2018-01-05 09:36:24
483
原创 Spring boot自定义注解拦截器
这个是本人关于自定义注解第二篇文章,在很多时候,我们往往通过注解定义自己的拦截器来,做一些过滤的工作,这个时候采用切面和异常捕获处理往往可以达到非常好的预期,下面我示例一个某个IP访问次数限定的例子:控制器代码:package com.AnnotationTest;import javax.servlet.http.HttpServletRequest;im
2018-01-04 16:40:22
1749
原创 多线程定时调度模块设计
前段时间由于用C++语言开发后台行情系统,涉及到一些多线程的封装和任务调度,思前想后,觉得抽象一套比较通用的任务调度框架,将之编译成一个独立的So,可以大大简化后续的多线程,以及定时调度规则。 大体的接口可以划分为三个接口:Operation.hpp,该类为用户需要实现的虚接口,用户即调度任务,用户派生即可代码:#pragma once//#ifndef _O
2017-12-29 15:01:23
454
原创 Spring boot 自定义注解
相信很多学习Spring框架初学者都会碰到各种注解比如@Controller , @Response,@Compent等各类注解,如何在Spring boot中增加自己的注解,是一个比较基础的话题,也是进入AOP编程大门必经之路。首先定义一个@Annotation的注解接口如下:package com.AnnotationTest;import java.lang.annota
2017-12-29 14:56:53
6104
1
原创 ORA-01000案例分析,游标超限
最近做柜台开发,自己通过C++ OCILIB执行 Oracle数据库的存储过程,获取分页表信息,存储过程如下:CREATE OR REPLACE procedure P_RM_PAGING_QUERY( p_pagesql in varchar2, --sql p_curPage in out Number , --当前页 p_pageS
2017-12-27 17:19:00
404
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人