自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 资源 (4)
  • 收藏
  • 关注

原创 Springboot项目中Controller层的单元测试

controller层的单元测试

2024-04-18 07:46:02 863

原创 模拟停车场停车服务

模拟停车场停车服务,实现计费功能、车位数限制等功能。

2024-02-19 15:07:31 395

原创 ThreadLocal中类图

ThreadLocal中类图:

2024-01-25 19:49:44 378

原创 HashMap源码解读

HashMap解读

2024-01-24 17:27:21 402

原创 mybatis-spring-boot-starter 2.0.1带来的问题

问题现象:代码出现的异常:java.lang.IllegalStateException: Failed to load ApplicationContext at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:132) at org.springframework.test.c

2022-05-15 22:59:09 418

原创 为什么毕业之后写的博客少了呢?

留下一个问题?因素一、时间平时工作996,甚至是10-11-6,或者10-11-7,晚上回来已经很晚了,其实真的没有那么多的时间进行写博客。对我自己有时候,晚上回到自己出租屋之后,就真的是什么都不想干,只想躺着无聊的刷着手机,从一些心理学上的书上看到了,可能是自己的注意力在白天的工作工程中消耗尽了,没有进行及时的补充导致的。因素二、重复性任务多,可写的内容少对于刚工作一两年的同学来说,那一段的时间成长速度都是比较大的,尤其是从普通员工成长成骨干员工,可以在自己组内承担一部分的工作职责之后,发现自己

2022-05-15 12:54:09 158

原创 合并代码仓库步骤

合并

2022-05-15 12:31:59 677

原创 关于程序中出现空指针问题的思考和解决办法

空指针问题的思考出现空指针问题的原因如何改变出现空指针问题的原因jdk 常用类型中的对象产生空指针,比如:String,BigDecimal,等类型。程序中出现的集合类型产生的空指针。比如:没有对List进行赋值,或者是rpc调用返回之后的没有对List属性进行赋值。程序中出现的自定义类中产生空指针。比如:自己定义一个User类,而在使用的过程没有对其进行判空操作。或者在返回的参数中出现...

2019-07-21 15:14:19 1819

原创 结算Code review

Code review 的好处好处自然不必多说,主要是:可以在测试前期发现代码中的逻辑问题,主要是针对核心逻辑。检查编码风格和代码结构设计问题边缘性功能检查,如日志打印,埋点功能等是否完善。结算Code review前需要思考以下几个问题:代码的核心逻辑在哪?作为开发者是否能流畅地给别人讲出来。需要自己把其中的核心逻辑逐条罗列出来,针对自己的代码可以有针对性的梳理。代码的整体...

2019-07-03 23:34:40 151

原创 两个线程交替打印数据

描述:子线程循环10次,主线程循环100,接着有回到子线程循环10次,接着再回到主线程又循环100,如此循环50次,请写出程序。下面的是我写的:public class Solution { public static void main(String[] args) { Bussiness bussiness = new Bussiness(); /...

2019-06-27 12:26:49 864

原创 HashMap注释版

1.HashMap的实现,讲的主要是jdk1.8的。HashMap中主要的知识点有:1.使用的hash算法,也即hash(key)的计算逻辑 /** * Computes key.hashCode() and spreads (XORs) higher bits of hash * to lower. Because the table uses power-of-t...

2019-06-25 23:44:45 304

原创 Semaphore控制并发线程数

介绍Semaphore(信号量)是用来控制同时访问特定资源的线程数量,它通过协调各个线程,以保证合理的使用公共资源。1. 应用场景可以用于流量控制,特别是公用资源有限的应用场景。package com.thread.concurrent;import java.util.concurrent.ExecutorService;import java.util.concurrent.Ex...

2019-06-24 09:26:13 717 2

原创 CyclicBarrier的使用

简介cyclicBarrier 是让一组线程到达一个屏障(也可能是同步点)时被阻塞,直到最后一个线程到达屏障时,屏障才会开门,所有别屏障拦截的线程才会继续执行常规使用package com.thread.concurrent;import java.util.concurrent.BrokenBarrierException;import java.util.concurrent.Cy...

2019-06-23 11:08:24 419

原创 线程间交换数据的Exchanger

含义:用于线程间交换数据,Exchanger 提供了一个同步点,在这个同步点,两个线程可以交换彼此的数据。这两个线程通过exchange方法交换数据,如果第一个线程先执行exchange()方法,它会一直等待第二个线程也执行exchange方法,当两个线程都到达了同步点时,这两个线程就可以交换数据,将本线程生产出来的数据传递给对方。应用场景可以用在遗传算法上可以用在校对工作代码pa...

2019-06-22 21:20:02 222

原创 CompletableFuture的使用

CompletableFuture解决的问题:总的来说,就是解决future模式的缺点。主要是a. 为了解决Future虽然可以实现异步获取线程的执行结果,但是future没有提供通知机制,调用方无法得知future什么时候执行完的问题。 b.要么使用阻塞, 在future.get()的地方等待future返回结果,这时会变成同步操作。如果使用isDone()方法进行循环判断,就会消耗...

2019-06-16 20:44:27 7159

原创 《见识》---摘抄

序言 “命”和“运”决定人的一生1.命取决于两个因素:环境的因素和我们自己对未来走向划定的方向。2.决定个人命运的第二个因素掌握在每个人自己手里。所谓命就是一个人看问题和做事情的方法,如此而已,但它们却决定了人的一生。 独特的看问题的方法和行事方式。3.即使同样盈利的公司,他也只看它们是否在行业里有说一不二的定价权,他加盟的高盛、亚马逊、谷歌和腾讯都符合这个原则。4.虽然让他失去了无数次...

2018-10-14 22:22:59 635

原创 Spring AOP配置(使用xml方式的配置)

配置通知的套路主要分成三步:配置被代理对象(目标对象)配置通知 配置代理对象,在该配置中完成以下三步: a.配置要代理的接口(proxyInterfaces) b.配置通知(interceptorNames) c.配置目标对象(被代理对象)1. 对应的类要实现的接口Test1SeviceInterpackage com.qjg.aop;public int...

2018-08-25 08:35:40 323

原创 Spring AOP配置(使用xml方式的配置)

# 配置通知的套路主要分成三步:1. 配置被代理对象(目标对象)2. 配置通知 3. 配置代理对象,在该配置中完成以下三步:    a.配置要代理的接口(proxyInterfaces)     b.配置通知(interceptorNames)    c.配置目标对象(被代理对象)# 1. 对应的类要实现的接口Test1SeviceInter```javapackage co...

2018-08-25 08:32:53 603

原创 OkHttp3异步执行

这是一步执行的入队代码: synchronized void enqueue(AsyncCall call) { if (runningAsyncCalls.size() < maxRequests && runningCallsForHost(call) < maxRequestsPerHost) { runningAsyncCalls.add(call);//放到运行队列中

2017-09-17 17:01:01 2648

原创 OkHttp3.0源码解析---拦截器

使用方法就不说了,重点记录下源码读取的过程和思路: 1.使用同步调用进行分析 response = client.newCall(builder.build()).execute();解析看到的newCall方法: /** * Prepares the {@code request} to be executed at some point in the future. */ @O

2017-09-15 11:44:09 760

原创 自定义控件---组合控件---标题栏TopBar

本文是阅读《android 群英传》的读书笔记实现了一个自定义的标题栏TopBar:1.先写attr.xml文件在AS中value文件夹下,新建一个attr.xml文件,这里需要注意的是要使用declare-styleable标签。 “`java 2.写TopBar的java文件,实现继承相关的Layout;思路:1、获取xml文件的中的属性值 2、初始化控件,并设置控件的属性 3、编

2017-07-30 17:44:49 365

原创 android仿老式优酷菜单

功能简述: 实现一个扇形的3级菜单,由内向外分别是一级菜单、二级菜单、三级菜单。功能: 1. 点击一级菜单时显示二级菜单,当点击二级菜单时,显示三级菜单。 2. 当点击屏幕上的一个按钮时,会隐藏所有的控件。再次点击时,会显示所有的控件。效果如图: , 此图是从网上找的。菜单UI主要思路是:全部使用相对布局,以实现图片的叠加。主要用到了 android:layout_alignParentB

2017-05-31 11:34:19 792

原创 Handle MessageQueue Message Looper之间的关系

Handler、 Looper、MessageQueue的关系

2017-05-29 18:33:54 534

原创 ThreadLocal类的使用

变量值的共享可以使用public static 变量的形式,所有的线程都使用同一个public static变量。如果想实现每一个线程都有自己的共享变量如何解决?JDK中ThreadLocal可以解决这样的问题。类ThreadLocal 解决的是每个线程绑定自己的值,可以将ThreadLocal类比喻成全局存放数据的盒子,盒子中可以存储每个线程的私有数据。线程变量的隔离性//A,B两个线程公共拥有

2017-05-29 16:42:41 561

原创 草稿箱中,使用makeDown新建文章会进行覆盖问题--解决方法

今天使用csdn的新写一篇文章,死活都要把之前保存在草稿箱中的一篇文章拉出来,我以为我只要删除这篇文章的所有文字,就相当于我又新建了一篇博客。而原来的继续存在,那么就是两篇文章了。事实上,我错了,我删除了之前草稿箱中保存的文章内容,写完新的,原来就的也没有了。而草稿箱中也只是保存了一篇文章。之后,从这个地方看到草稿箱的使用问题。方知也有人和我一样理解错了。这里提出csdn本来就有的方法,就是在点击工

2017-05-18 18:09:47 649

原创 windows下编译最新x264

思路:(为了保存,勿看)下载安装MinGW进行安装,测试MinGW 具体做法:官方下载地址,进行下载。然后进行安装,会出现如下界面:选“continue”,出现下图: 下载yasm,官方地址: Yasm Downloads and Releases ,选择Source .tar.gz进行下载。看图: 参考文献1.windows下使用MinGW和msys编译x264 2.windows下编

2017-05-18 17:52:45 520

原创 JSON解析-开源jsoncpp---动态链接库生成

环境vs2010 ,下载和编译使用静态链接库可以参考这篇文章C++的Json解析库:jsoncpp和boost由于上面的只是说了生成静态库的过程,使用静态库在我原来都是使用静态库的工程中,行不通,原因就是因为:MD,MDd,MT,MTd的配置过程中。无奈只能寻找生成动态库的方法。配置过程我是新建了一个dll库的工程,将开源框架中的源码复制到工程中进行编译。创建工程的步骤和包含头文件的过程就不说了。

2017-04-12 16:29:26 4237

原创 C++的Json解析库:jsoncpp

环境首先,我是参考了C++的Json解析库:jsoncpp这篇博客。进行下源码,进行编译。以上过程不再赘述。在使用过程中遇到的问题vs2010报出如下错误:1>json_vc71_libmtd.lib(json_value.obj) : error LNK2005: "public: void __thiscall std::_Container_base12::_Orphan_all(void)"

2017-04-11 16:18:15 5626

原创 ArrayList源码解读

ArrayList的创建默认构造函数: /** * Constructs an empty list with an initial capacity of ten. */ public ArrayList() { this.elementData = DEFAULTCAPACITY_EMPTY_ELEMENTDATA; }从上面的DEFAULTC

2017-04-04 14:32:22 446

原创 TabLayout和Viewpage连用

环境说明:使用的是Android studio2.2添加Design库设置布局文件在Module:app中 build.gradle中添加compile ‘com.android.support:design:25.0.1’和 compile ‘com.android.support:appcompat-v7:25.0.1’初始化控件先写一个Fragment `public class Sa

2017-03-15 23:29:13 581

原创 影响力摘抄

影响力摘抄:前言:6个原理: 互惠、承诺和一致、社会认同、喜好、权威以及短缺。 1. 物质利己主义是与动机有关的一致事物,视为人民们应该知道而无须着力描述的不言而喻的因素。 2. 剖析了每一个原理让人明显地、自动地、无意识地顺从他人的能力。(人们没有经过事先考虑而愿意说同意)。有证据表明:现代生活不懂加快的步伐以及各种信息的冲击,会使这种不假思索便顺从别人的特殊情形在未来会变得越来越普遍。因此

2017-03-08 22:53:35 1409

原创 209. Minimum Size Subarray Sum

Given an array of n positive integers and a positive integer s, find the minimal length of a contiguous subarray of which the sum ≥ s. If there isn’t one, return 0 instead.For example, given the array

2017-01-22 15:02:40 305

原创 350. Intersection of Two Arrays II

Given two arrays, write a function to compute their intersection.Example: Given nums1 = [1, 2, 2, 1], nums2 = [2, 2], return [2, 2].Note: Each element in the result should appear as many times as it

2017-01-21 21:21:48 359

原创 450. Delete Node in a BST

Given a root node reference of a BST and a key, delete the node with the given key in the BST. Return the root node reference (possibly updated) of the BST.Basically, the deletion can be divided into t

2017-01-19 21:03:06 259

原创 《世界秩序》摘抄

人的因素:人类与环境的关系:麦迪逊的《联邦党人文集》第十篇就鲜明地体现了这一点。追溯社会的演变时,他们探究“根深蒂固的人性”因素:每个人都有强大却易错的理性和与生俱来的“自恋”,二者相结合便使人“形成了不同观点”;人的能力不同直接导致“学历和财产不同”,“社会划分成不同的利益和党派”。虽然这些思想具体因素的分析及结论不同,但都从人性角度构建起理论框架,而人性的内在本质和显示体验是永恒不变的。(人性内

2017-01-19 20:27:40 1218

原创 273. Integer to English Words

Convert a non-negative integer to its english words representation. Given input is guaranteed to be less than 231 - 1.For example, 123 -> “One Hundred Twenty Three” 12345 -> “Twelve Thousand Three Hu

2017-01-18 16:57:05 391

原创 二叉树的遍历(递归,非递归,层次)

非递归中序遍历:// 对于结点root;// 1)若其结点不为空,则将root入栈并将root的左孩子置为当前的root,然后对当前结点root再进行相同的处理;// 2)若其左孩子为空,则取栈顶元素并进行出栈操作,访问该节点,然后将当前的root置为栈顶结点的右孩子// 3)直到p为null并且栈为空则遍历结束 // iterative public

2017-01-17 17:03:49 325

原创 VirtualBox Host Only Adapter Error VERR_INTNET_FLT_IF_NOT_FOUND

VirtualBox 出现以下问题:Failed to open/create the internal network 'HostInterfaceNetworking-VirtualBox Host-Only Ethernet Adapter #2' (VERR_INTNET_FLT_IF_NOT_FOUND).Failed to attach the network LUN (VERR_IN

2017-01-17 16:50:40 4650 1

原创 20. Valid Parentheses

Given a string containing just the characters ‘(‘, ‘)’, ‘{‘, ‘}’, ‘[’ and ‘]’, determine if the input string is valid.The brackets must close in the correct order, “()” and “()[]{}” are all valid but “

2017-01-11 10:25:42 306

原创 165. Compare Version Numbers

Compare two version numbers version1 and version2. If version1 > version2 return 1, if version1 < version2 return -1, otherwise return 0.You may assume that the version strings are non-empty and conta

2017-01-09 10:26:05 341

JsonCPP C++ 动态库的使用

JsonCPP C++ 动态库的使用。包含了动态库和测试代码。

2017-04-12

xp系统ADO中的msado15.dll和msjro.dll库

在XP系统中编译的程序在win7中编译出现ADO库打不开或者打开了报一些语法错误,是因为win7中的ADO的库出现错误,因此需要将xp中的这两个库拷贝到当前目录并且导入这两个库,而不用win7系统自带的库!里面包含了两个dll库。

2016-01-24

android--- 对话框的使用

编写了单选,多选,自定义的对话框的代码.你可以修改其中的代码,方便自己的使用。

2015-07-14

WinCE汉字和Unicode相互转换

实现了在WinCE6.0 平台下的汉字和Unicode之间的相互转换

2015-07-02

空空如也

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

TA关注的人

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