- 博客(21)
- 资源 (9)
- 收藏
- 关注
原创 【工具类】基于Redis的分布式可重入锁(Java)
基于Redis的可重入锁,这个版本通过spring注入方式完成的Service版本,有时间写一个Util的版本。 1.定义的Lock接口,与JDK内置的类似,添加了过期时间,没有支持Condition。 import java.util.concurrent.TimeUnit; /** * @author : wudi28 * @date : 2018/9/24 18:35 */ ...
2018-09-24 20:30:21 2447 2
原创 【计算器Java实现】基于栈的复杂表达式解析&&数值计算
该实现可以计算复杂的计算表达式,做了几个测试通过,如下所示: +(12.3 - 2.3 * 1) - 10/3 +- 2 -pow(min(1 + 2, 2),-1 * abs(max(1,1/-4+1/4))) 由于所有的复杂表达式都可以拆解为二元运算,或者一元运算,我们定义了一些基础的运算符,如下枚举,如果需要其他的可以自己在枚举中添加,并且在NumericalCalculat
2017-10-14 14:13:41 2666
原创 【温故知新-Java虚拟机篇】5.字节码执行引擎
该系列博客暂且定义为《深入理Java解虚拟机》的笔记,有些坑等后续看完书再填,有不对的地方多指教。 上一节我们讨论了类的加载过程。这期我们讨论运行时的内存布局。 1.运行时栈帧结构 栈帧(Stack Frame)是用于支持虚拟机进行方法调用和方法执行的数据结构,他是虚拟机运行时数据区中虚拟机栈(Virtual Machine Stack)的栈元素。栈帧存储了方法的局部变量表、操作
2017-10-09 19:25:55 350
原创 【温故知新-Java虚拟机篇】4.类加载机制
该系列博客暂且定义为《深入理Java解虚拟机》的笔记,有些坑等后续看完书再填,有不对的地方多指教。 千辛万苦,把前三部分枯燥的内容结束了,终于迎来了类加载机制这一章。
2017-10-06 19:30:20 424
原创 【温故知新-Java虚拟机篇】3.类文件结构
该系列博客暂且定义为《深入理Java解虚拟机》的笔记,有些坑等后续看完书再填,有不对的地方多指教。 Java 号称“一次编写,到处运行”,平台无关性是Java一个重要的特性,Sun公司以及其他虚拟机提供商发布了许多可以运行在各种不同平台上的虚拟机,这些虚拟机都可以载入和执行相同一种平台无关的字节码,从而实现一次编写,到处运行。 Java虚拟机现在已经不仅仅为Java语言服务,已经有很多其他语言
2017-10-03 16:26:33 372
原创 【温故知新-Java虚拟机篇】2.垃圾收集器
该系列博客暂且定义为《深入理Java解虚拟机》的笔记,有些坑等后续看完书再填,有不对的地方多指教 以下的图片均来自本书。 引言:上一节介绍了Java的内存运行时的各个部分,其中程序计数器、虚拟机栈、本地方法栈三个区域随属于线程私有,生命周期与线程相同。 这几个区域的内存的分配和回收都具备确定性,不需要过多考虑回收的问题,因为方法或线程结束,内存就自然回收了。而Java
2017-09-26 21:02:56 336
原创 【温故知新-Java虚拟机篇】1.内存模型
该系列博客暂且定义为《深入理Java解虚拟机》的笔记,有些坑等后续看完书再填,有不对的地方多指教 以下的图片均来自本书。 1.运行时数据区 运行时数据区主要由虚拟机栈、本地方法栈、堆、方法区以及程序计数器组成。如下图所示: 其中线程私有的有:虚拟机栈、本地方法栈、程序计数器 线程共享的有:堆、方法区 1)程序计数器(Program Counter Register): a.是当前
2017-09-26 15:19:23 338
原创 数据挖掘学习笔记-决策树算法浅析(含Java实现)
目录 一、通俗理解决策树算法原理 二、举例说明算法执行过程 三、Java实现 本文基于书籍《数据挖掘概念与技术》,由于刚接触Data Mining,所以可能有理解不到位的情况,记录学习笔记,提升自己对算法的理解。 代码下方有,如果有金币的童鞋可以贡献一下给无耻的我一枚: 代码传送门:http:// 一、通俗理解决策树算法 决策树算法主要用于分类,分类顾名思义就是将不
2016-01-24 18:18:00 9216 3
原创 Spring4.1.6 + Mybatis3.2.8 (+ Dubbo可选) 框架搭建
Spring+mytabis+dubbo集成框架搭建,包含其中附源码与Jar包下载
2015-04-25 15:19:52 8273
原创 设计模式C++练习(1)_工厂模式
#include #include using namespace std; //抽象工厂模式 class SingleCore { public: virtual void f()=0; }; class SingleCoreA : public SingleCore { public: void f(){cout << "Sing
2014-09-14 21:53:49 570
原创 归并排序
#include #include void Merge(int arr[], int low, int mid , int high, int temp[]) { int i, j,k; for(i = low, j = mid+1,k = 0; i<=mid && j <=high;k++) { if(arr[i] < arr[j]) temp[k] =
2014-09-09 09:48:28 410
原创 堆排序_C语言实现
#include #include void AdjustHeap(int *arr, int s, int e) { int temp = arr[s]; for(int j=2*s+1; j<=e; j=j*2+1) { if(j arr[j+1]) ++j; if(arr[j] > temp) break;
2014-09-08 14:54:03 410
原创 二叉树前序,中序,后序非递归遍历
#include #include #include #include #include using namespace std; struct Node { int value; Node *pLChild; Node *pRChild; }; void Visit(Node *node) { printf
2014-09-08 14:15:12 444
转载 检测单链表中是否有环--快慢指针法
问题描述:在单向链表中,每个结点都包含一个指向下一个结点的指针,最后一个结点的这个指针被设置为空。但如果把最后一个结点的指针指向链表中存在的某个结点,就会形成一个环,在顺序遍历链表的时候,程序就会陷入死循环。 我们的问题就是,如何检测一个链表中是否有环,如果检测到环,如何确定环的入口点(即求出环长,环前面的链长)。 一种比较耗空间的做法是,从头开始遍历链表,把每次访问到的结点(或其地址)存
2014-08-07 16:39:58 782
转载 C,C++表达式求值顺序
裘宗燕:C/C++ 语言中的表达式求值 经常可以在一些讨论组里看到下面的提问:“谁知道下面C语句给n赋什么值?” m = 1; n = m+++m++; 最近有位不相识的朋友发email给我,问为什么在某个C++系统里,下面表达式打印出两个4,而不是4和5: a = 4; cout C++ 不是规定 要弄清这些,需要理解的一个问题是:如果程序里某处修改了一个变量(通过赋值、增量
2014-05-08 18:51:54 499
转载 c++中关于数组作为函数参数并传递数组元素个数的几种有效方法的讨论
//由于数组的元素个数默认情况下是不作为实参内容传入调用函数的,本程序用来讨论有此带来的 //相关问题,以及解决问题方法,即给调用函数传递数组的元素个数的几种有效方法并实现它
2014-05-06 17:13:48 801
转载 内存分配_栈与堆的区别
一个程序一般分为3段:text段,data段,bss段 text段:就是放程序代码的,编译时确定,只读, data段:存放在编译阶段(而非运行时)就能确定的数据,可读可写 就是通常所说的静态存储区,赋了初值的全局变量和静态变量存放在这个区域,常量也存放在这个区域 bss段:定义而没有赋初值的全局变量和静态变量,放在这个区域 堆和栈的区别 一、预备知识—程序的内存分配 一个由c/C++编译的
2014-04-19 12:52:42 592
原创 Mule学习之路_2.与WSO2 Registry集成之查询WSDL
最近在做Mule与WSO2 注册表的集成,现有的资料中,只找到一个老外的博客 http://www.smartjava.org/content/mule-and-wso2-registry-integration 可是却没有走通,所以只有另辟蹊径。 最近项目组研究注册表的同学发现WSO2 Registry提供的一些发布,查询服务和WSDL的API 并且有了调用的例子,所以我就打算在Mu
2013-11-25 14:31:58 1536
原创 Mule学习之路_1.MuleClient调用Mule发布的服务
据了解Mule通过Flow发布的服务默认就是通过CXF发布的,首先创建服务和实现类 Service:HelloWorld package com.easyway.esb.mule; import javax.jws.WebService; @WebService public interface HelloWorld { String sayHi(String text
2013-11-19 15:20:40 2536 2
决策树算法(Java实现)
2016-01-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人