自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(291)
  • 资源 (11)
  • 收藏
  • 关注

原创 Spring BeanDefinition接口的实现类及属性

BeanDefinition的作用:把xml中配置的bean或注解对应的Bean信息封装到BeanDefinition中并且BeanDefinition注册到BeanDefinitionRegistry这样spring容器才可以获取到需要实例化的BeanBeanDefinition接口实现类图:如下:BeanDefinition接口的类图GenericBeanDefinition类的属性:总结:GenericBeanDefinition常用属性说明1、id: bean唯一标识名,对

2020-12-21 13:17:54 345

原创 JVM学习笔记 - 判断对象是否存活GC Roots

文章目录一、判断对象是否存活?二、 GC Roots可达性分析图一、判断对象是否存活?这个算法的基本思路就是:通过一系列的称为“GC Roots”的对象作为起始点从这些节点开始向下搜索,搜索所走过的路径称为引用链当一个对象到 GC Roots 没有任何引用链相连时,则证明此对象是不可用的。作为 GC Roots 的对象包括下面几种:虚拟机栈(栈帧中的本地变量表)中引用的对象;各个线程调用方法堆栈中使用到的参数、局部变量、临时变量等。方法区中类静态属性引用的对象;jav..

2020-12-17 16:35:52 242 1

原创 JVM学习笔记 - JVM堆空间的划分

文章目录前言一、JVM堆空间的划分图前言JVM的垃圾回收主要是发生在堆空间。一、JVM堆空间的划分图示例:JVM堆空间被划分为年轻代和老年代如图:而年轻代又被划分为3部分

2020-12-17 15:43:24 628

原创 JVM学习笔记-虚拟机机栈

什么是虚拟机栈:存储当前线程运行java方法所需的数据、指令、返回地址虚拟机栈与java的方法运行息息相关虚拟机栈的结构:虚拟机栈是一种先进后出的数据结构虚拟机栈里面有什么:虚拟机栈里面有栈帧一个虚拟机栈里面可能有多个栈帧每一个栈帧对应一个方法,1、方法的执行对应栈帧入栈2、方法的调用完成或者返回对应栈帧出栈学习产出:栈帧与方法调用图...

2020-12-12 15:13:55 175

原创 JVM学习笔记- 运行时数据区内存划分

简单了解下一个HelloWorld.class字节码进入内存的流程图要了解JVM内存管理,首先得知道JVM内存区域划分,JVM对由类加载进入内存的字节码交由运行时数据区去管理的。先看运行时数据区的划分JVM整个运行时数据区域是分为虚拟机栈,程序计数器,本地方法栈,堆和方法区这个几块,上图是按照线程私有和线程共享进行了划分线程私有线程共享虚拟机栈 、 程序计数器、本地方法栈堆、 方法区...

2020-12-12 14:04:36 146

原创 Spring源码阅读-解析自定义标签到BeanDefinition

spring.xml里面配置如下:<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:aop="http://www.springframework.o

2020-12-11 16:03:23 97

原创 deepin系统下安装redis数据库

deepin系统安装redissudo apt-get install redis-server检查redis是否安装成功sudo apt-get install redis-server检查redis是否安装成功

2019-11-10 13:03:27 216

转载 StringBuilder使用技巧

StringBuilder使用

2016-04-12 22:48:12 1084

转载 把java中的list对象转换成net.sf.JSONArray类型对象

JSONArray

2016-04-11 22:43:16 7616

转载 net.sf.JSONArray

JSONArray

2016-04-11 22:28:55 980

转载 net.sf.JSONObject学习

package com.dean;public class Address { private String road; private String street; private String province; private String no; public String getRoad() { return road; }

2016-04-11 22:18:20 743

转载 Apache commons-io LineIterator学习

package com.dean.test;import java.io.File;import java.io.IOException;import org.apache.commons.io.FileUtils;import org.apache.commons.io.LineIterator;public class CommonsIOTest { public static void

2016-04-10 22:28:06 3640

转载 C++ primer plus Sales_item.h源码

Sales_item.h代码块#ifndef SALESITEM_H#define SALESITEM_H#include <iostream>#include <string>class Sales_item{public: Sales_item(const std::string &book):isbn(book),units_sold(0),revenue(0.0){}

2015-11-09 21:49:38 1770

转载 快速排序代码实现

快速排序代码实现快速排序代码:#include <stdio.h>void QuickSort(int * a, int low, int high);int FindPos(int * a, int low, int high);int main(void){ int a[6] = {2, 1, 0, 5, 4, 3}; int i; QuickSort(a, 0, 5

2015-08-23 20:17:44 618

转载 二叉树遍历的的例子

二叉树遍历代码二叉树三种遍历小例子:#include <stdio.h>#include <malloc.h>struct BTNode * CreateBTree(void);void PreTraverseBTree(struct BTNode * pT);void InTraverseBTree(struct BTNode * pT);void PostTraverseBTree(st

2015-08-23 11:39:21 2039

转载 linux awk使用例子

linux awk截取列

2015-08-03 08:46:44 686

转载 linux sed替换命令s举例

linux sed命令不会真正修改原文本,除非重定向 linux sed替换命令ssed 's/test/mytest/g' example.txt表示将example.txt中的test文本全部替换为mytest 请注意这个命令sed 's/test/mytest/' example.txt 如果不带g则表示只会替换每行开头的test为mytest sed '^s\test\mytest\

2015-08-02 14:58:03 21150 3

转载 linux sed删除d命令使用举例

sed删除,并不会修改原文件中的内容,除非重定向新文件sed ‘2d’ example.txt表示删除example.txt中第二行的文本内容 sed ‘2,$d’ example.txt表示删除example.txt文件的第二行到末尾所有行。 $表示最后,末尾, sed ‘$d’ example.txt表示删除example.txt文件的最后一行。 sed '/test/'d example.

2015-08-02 14:29:54 12678

转载 python模块学习

模块是python组织代码的基本方式: python的脚本都是用扩展名为py的文本文件保存的。 一个脚本可以单独运行,也可以导入另一个脚本中运行。 当脚本被导入另一个脚本中运行时,我们将其称为模块。模块名与脚本文件名相同: 比如你有一个items.py脚本, 则可以在另外一个脚本中用import items语句导入它这是一段名字叫cal.py的python代码,它将被作

2015-07-31 08:08:56 744

转载 建造者设计模式举例

下面是一个建造者设计模式类图的例子 其中CarBuilder和CarModel是聚合的关系,(聚合关系常见的类似电脑和鼠标,电脑和键盘的关系),此处我们可以用CarModel随心所欲的组装我们需要的车

2015-07-29 06:28:33 967

转载 已知中序遍历序列和后序遍历序列,求先序遍历

通过中序遍历和后序遍历求先序中序:BDCEAFHG后序:DECBHGFA求先序遍历结果:先求原始二叉树 后序遍历中最后出现的是根,所以A是整棵树的根,在结合中序遍历来看 BDCE是A的左子树,而FHG是A的右子树,所以我们就有了下面的图: 而BDCE序列中谁是整个序列根,还得看后序谁最后出现,答案是B 此时再看中序中根B左端没有左子树,右端有DCE,所以DCE是B的右子树 我们

2015-07-26 10:22:41 11169 5

转载 借助UML类图理解设计模式

最近发现设计模式的代码,边看边画类图,更容易理解: 下面是我参照设计模式之禅这本书,使用umLet工具画的类图 此处的抽象工厂就是HumanFactory注明是个接口,但在实际应用中 也可以定义成一个抽象类, 简单的说这里我们是用工厂类来造人, 所以工厂类和人类之间存在依赖关系, 这一点也可以通过图中的HumanFactory和Human之间的依赖关系表明,此处抽象工厂就是Human

2015-07-25 17:43:57 1892

转载 python实现类似switch功能

下面是python实现了类似其他语言switch功能代码#!/usr/bin/python#coding:utf-8from __future__ import divisiondef jia(x,y): return x+ydef jian(x,y): return x-ydef cheng(x,y): return x*ydef chu(x,y): return

2015-07-25 16:06:15 2513

转载 已知两种遍历序列求原始二叉树

已知两种遍历序列求原始二叉树需要明确的前提条件通过先序和中序可以求出原始二叉树通过中序和后序可以求出原始二叉树但是通过先序和后序无法还原出二叉树换种说法:只有通过先序中序或者后序中序才可以确定一个二叉树先来看一个例子,已知先序遍历序列和中序遍历序列求后序遍历: 先序:ABCDEFGH 中序:BDCEAFHG 求后序: 分析:要求后序遍历序列,必须求出原始二叉树 先看先序序列A第

2015-07-25 09:18:38 10404

转载 画流程图

下面是用Diagram Designer画的从1加到100的流程图对照流程图写下代码://开始定义两个变量int i = 1, sum = 0;//i的值1一直小于等于100成立的话while(i{  sum= sum + i;  i =  i + 1;}printf("sum = %d", sum);

2015-07-24 19:53:53 917

转载 shell序列和nohup &

注意$(seq 0 10)也可以写成`seq 0 10`还有一个nohup 要执行的具体命令 &这个命令可以帮我们解决linux下某些例如java -jar 命令或者./二进制c++文件因为关闭窗口,而进程结束的情况

2015-07-23 22:47:43 753

转载 强大的lambda和reduce

python中有个lamba可以将函数的定义调整为行级定义,简化脚本执行reduce会对序列l中的元素每两个逐次叠加,作用f函数的运算求阶乘也可以一行搞定

2015-07-23 08:23:57 866

转载 uml类图中类的可见性

我发现自己越来越喜欢umlet这个软件了,双击SimpleClass, 在Properties视图中可以修改类名--在图中可以形成分隔属性,方法的横线,在--下面面可以填入属性,方法如图+表示公有的, -表示私有的看到了吗,上图中出现了一个#表示这个updateMileageCount()方法是受保护的

2015-07-22 08:11:49 12708

转载 使用umlet画序列图

感觉UMLet这个软件简单易用照着网上别人的UML序列图花了个取款序列图。

2015-07-21 07:19:15 3904

转载 类图关系整理

类图关系:1、泛化(Generalization)2、实现(Realization)3、关联(Association)

2015-07-20 08:05:26 864

转载 使用staruml画类的泛化(继承)关系图

打开staruml选中右侧Unlitled中的DesignModel在找到StarUML横向上方的model点击Add Diagram-> Class Diagram在出现了ClassDiagram1(相当于一个画布一样),在选中ClassDiagram1继续添加类,添加类x先要选中左侧的的工具栏中的class,在ClassDiagram1上点击就有了一个类图,修改或着

2015-07-18 19:02:46 26951

转载 C语言动态分配内存知识

数组的长度必须事先指定,只能是常整数,不能是变量 传统形式定义的数组,该数组的内存程序员无法手动释放,只能在定义>该数组的函数使用完毕后,释放数组占用的内存。 数组的长度一旦定义,其长度就不能更改。 传统形式定义的数组不能跨函数使用。 动态内存分配可以很好的解决传统数组的缺点。 传统数组也被称之为静态数组。 malloc函数介绍: malloc是memory

2015-07-12 10:23:39 723

转载 python while循环控制

python while循环控制while循环控制代码#!/usr/bin/python# -*-coding:utf8-*-#while True:# print "hello"# x = raw_input("please input something, q for quit:")# if x == "q":# breakx = ""while x !=

2015-07-12 10:03:20 938

转载 序列和字典遍历

序列和字典的迭代遍历python代码如下#!/usr/bin/python# -*-coding:utf-8-*-#除字典以外,字符串,列表,元组都可以称为序列s = "hello"#l是列表l = [1, 2, 3, 'a', 'b']#t是元组t = (7, 8, 9, 'x', 'y')#d是字典d = {1:111, 2:222, 5:555, 3:333}#print '

2015-07-09 21:23:07 1873

转载 Markdown使用小结

突出显示标题可以用#号, 同样用等于号或者横线在文字下面也可以突出显示文字 在文字左右两侧各加两个星号同样可以起到加强,强调效果半方大的空白:  &ensp后跟分号或&#8194后跟分号 全方大的空白:  &emsp后跟分号或&#8195后跟分号 不断行的空白格:  &nbsp后跟分号或&#160后跟分号\#号用来会显示成一个#号引用某些段落可以使用>xml标记左尖括号: &lt后面

2015-07-06 20:58:19 579

转载 cpu与内存

cpu域内存的关系示意图:

2015-07-05 21:06:07 747

转载 python文件读写

python读文件1、读取整个文件# -*- coding: utf-8 -*-#python进行文件读写的函数是open或file#fo = open('d:/devSpace/code/python/test.txt')#print fo.read()#fo.close()f1 = file('d:/devSpace/code/python/test.txt')print f1.rea

2015-07-05 20:43:29 722

转载 补码相关知识学习

原码: 也叫符号-绝对值码 最高位0表示正,1表示负, 其余二进制是该数字的绝对值的二进制位 如十进制的负5二进制的原码为1101原码的特点: 原码简单易懂 加减运算复杂 存在加减乘除四种运算,增加了CPU的复杂度 零的表示不唯一(1000和0000都可以表示零)反码: 如同原码运算不方

2015-05-07 16:10:03 697

转载 C语言enum(枚举)数据类型

#include <stdio.h>//enum Weekday只是一个数据类型,//规定了该类型的变量值必须是哪些enum Weekday{ Monday, Tuesday, Wednesday, Thursday, Friday, Staturday, Sunday};void f(enum Weekday i){ //enum Weekday类

2015-05-07 09:59:48 2587

转载 利用结构体输入学生信息并按分数排序后输出

#include <stdio.h>#include <malloc.h>struct Student{ int age; float score; char name[100];};int main(void){ struct Student * pst; int i, j; int len; printf("请输入学生的个数len

2015-05-06 20:09:08 13022 1

vnote离线markdown笔记软件

vnote离线markdown笔记软件

2022-04-11

servlet学习demo程序

servlet入门学习demo程序,仅供入门学习,在eclipse下可导入。

2015-12-29

Git_for_Windows_1.9.5

git bash网站download,有时候打不开,上传这个方便大家下载。安装后就可以 git命令pull代码,push代码了,可以在windows上操作一些简单的linux命令。

2015-11-15

python MySQLdb 64位win7安装版本

python连接mysql数据库需要MySQLdb win7 64位安装好就可以用了。 具体代码可以参考:http://www.runoob.com/python/python-mysql.html

2015-11-15

PyDev 4.2.0.zip

解压后,拷贝features,plugin到eclipse相对目录,打开eclipse后做相应配置即可

2015-07-25

dos2unix.rar

cgwin下的shell脚本执行,常常因为格式问题无法执行,使用dos2unix 格式或脚本文件后方可执行。

2015-07-25

umlet_13.3.zip

uml免费画图软件,免安装,解压,双击右端视图即可画图。

2015-07-25

Diagram Designer

免费的Diagram Designer,画流程图的软件。

2015-07-25

MinGw gcc编译器

解压完MinGW.7z文件后,配置完环境变量,编写一个c/c++程序hello.c/hello.cpp原代码,cmd进入windows命令行后,cd进入到当前hello.c或hello.cpp源代码所在路劲下,使用下面的命令: gcc -g hello.c -o hello 编译hello.c源程序输出目标文件为hello, 紧接着再在命令输入hello,试试效果 这个东西还可以作为CodeBlocks的gcc编译器用。

2015-04-12

m2eclipse安装包

下载完并解压到好m2eclipse包后,在eclipse的dropins目录下新建一个m2eclipse.link文件,文件里面填写m2eclipse包的路径:如D:\devSpace\eclipse\m2eclipse,重启eclipse,在window-->preference下就可以看到maven项了(希望可以帮到大家,发现官网的m2e好像已经下不下来了)

2015-01-26

win7安装Oracle必读

在win7安装Oracle注意事项,本文主要从Oracle解压文件安装前必须修改的两个文件如何修改说明,目的在于安装Oracle快速准确

2011-03-12

空空如也

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

TA关注的人

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