自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 资源 (3)
  • 收藏
  • 关注

原创 使用jspdf插件生成pdf。

html2canvas.js下载链接https://download.csdn.net/download/qq_27224549/10038984原理:通过canvas将div截成图片。动态计算分页,然后将图片插入到pdf中。说明:document.conn conn为 <div class="conn"></div> conn就是要打印的div。注意...

2017-10-25 14:26:38 1806 3

原创 orcal expdb 和impdb导入导出数据

Orcal expdb导出 imp导入

2022-03-11 15:44:42 1160

原创 SpringBoot定时任务简单使用和自定义开启关闭修改周期

一、简单使用1.pom加入基本springboot基本的starter即可<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </d...

2019-07-18 11:13:42 4186

原创 SpringBoot集成RabbitMQ高级使用

1.交换器发消息者、队列、收消息者,RabbitMQ 在这三个基本概念之上, 做了一层抽象, 在发消息者和 队列之间, 加入了交换器 (Exchange). 这样发消息者和队列就没有直接联系, 转而变成发消息者把消息给交换器, 交换器根据调度策略再把消息再给队列。 P 代表生产者,X代表交...

2019-07-16 15:31:56 519 2

原创 Java并发编程-加锁机制

要保持状态的一致性,需要在单个原子操作中更新所有的相关的状态变量。内置锁:通过内置锁来支持原子性,同步代码块(Synchronized Block)包括两个部分(1)锁的对象引用(2)锁保护的代码块synchronized(lock){}静态的synchronized方法以Class对象作为锁。每个java对象都可以做一个实现同步的锁,这些锁成为内置锁或监视器锁。现场在进入同步代码...

2019-07-03 08:59:39 233

原创 springboot下rabbitmq的简单使用

这篇文章中介绍了如何安装rabbitmq,以及注意事项。https://blog.csdn.net/qq_27224549/article/details/920841291.pom中添加相关的starter依赖。<dependency> <groupId>org.springframework.boot</groupId> &lt...

2019-06-26 14:40:11 135

原创 windows 下载安装 rabbitmq。

1.下载erlangRabbitMQ服务端代码是使用并发式语言erlang编写,要下载安装erlang。下载地址https://pan.baidu.com/s/1pZJ8l2f3omrgnuCm9a8DVA安装完成之后创建一个名为ERLANG_HOME的环境变量。其值指向erlang的安装目录,同时将%ERLANG_HOME%\bin加入到Path中,最后打开命令行,输入erl,如果出现e...

2019-06-15 15:04:52 215

原创 Redis——简单动态字符串SDS

简单动态字符串(simple dynamic string)sds 作为redis的默认字符串。而不是直接使用C语言传统的字符串。struct sdshdr{int len;//记录buf数组中已使用的字节数量,等于sds保存的字符的长度int free;//记录buf中未使用的字节数量char buf[];//保存字符串}与C语言中string字符串相比,sds字符串有以...

2018-12-28 17:24:45 450

原创 linux ubuntu 部署java mysql tomcat 详解(配置IP,安装SSH服务,navicat无法连接mysql)

在一台纯净的ubuntu 服务器上安装javaee项目。纯净的ubuntu 好处就在于纯净,什么都没有。1.配置IP需要注意的是,配置IP要查看网卡信息,如果是多网口,还要确认网线插在了,自己配置的网卡上,否则,ip ping的时候不成功。ip a 命令查看网卡名称。lo 网卡默认为环路设置,也是默认127.0.0.1.这个不能修改,要修改类似,eh0,或者en0的,对应的网卡名称的I...

2018-12-26 16:23:52 241

原创 java线程安全和锁优化

一、线程安全不可变不可变对象一定是线程安全的。当一个不可变对象呗构建出来,没有发生this引用逃逸,在外部的状态永远不会改变。在多线程情况下,也就不会出现不一致的情况。不可变对象,是最简单最纯粹的线程安全。被final修饰的基本数据类型,就是不可变的。不可变对象,对象的行为不会对其产生任何影响。典型的就是String类型,无论如何调用substring,replace等方法,都会返...

2018-09-03 18:06:46 142

原创 java内存模型

java内存模型是来屏蔽掉各种硬件和操作系统的内存访问差异,以实现让java程序在各种平台下都能达到一致的内存访问效果。主要目标:定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存,从内存中取出变量这样的底层细节。这里的变量与java编程中的变量有所区别,这里变量包括实例字段、静态字段、构成数组对象的元素。不包括局部变量和方法参数,因为后者线程私有,不存在共享。java主内存和工作...

2018-08-28 16:28:51 129

原创 jdk 1.7和1.8jvm性能监控和故障处理工具

jdk的bin目录下提供了很多jvm的性能监控工具,供我们使用。 jsp 虚拟机进程状况工具 jps (jvm Process Ststus Tool)。功能类似于ps ,列出正在运行的进程。并显示虚拟机主类main函数所在类。jsp -q 只输出LVMIDjps -m 输出jvm启动时,传递给主类main()函数的参数,主要是一些jvm配置信息。jps -l 输出mai...

2018-08-22 11:46:21 1037

原创 JVM内存分配与回收策略

请了解jvm内存各个内存区域划分情况,可参考https://blog.csdn.net/qq_27224549/article/details/81557563对象在JVM内存中的分配,大方向讲是分配在堆中,其次主要分配在堆中的eden区(伊甸园)。其内存分配的具体细节还取决于使用何种的垃圾收集器,以及jvm内存参数如何设定。对象内存算法主要有两种指针碰撞:假设堆的内存是规整的,所有用...

2018-08-20 12:43:34 186

原创 Java并发编程-线程安全性

对象的共享和可变性共享意味这变量可以由多个线程访问。可变意味着变量的值在生命周期内可以发生变化。java中同步机制主要包括四种:(1)synchronized 一种独占的加锁方式(2)volatite类型的变量(3)显式锁(4)原子变量无状态对象:一定是线程安全的。所谓无状态对象是指类或方法中不包含任何域也不包含其他累中域的引用,说简单一点就是,所有的参数,都是线程请求...

2018-08-15 16:00:02 191

原创 Jvm垃圾收集算法

1.标记-清除算法(基础算法)算法分为“标记”和“清除”两个阶段。首先标记出所有需要回收的对象,在标记完成后统一回收所有被标记的对象。不足:1.效率问题,标记和清除的效率都不高;2.空间问题,标记清除之后会产生大量不连续的内存碎片,空间碎片太多可能导致以后程序运行过程中,需要分配较大对象时,无法找到足够的连续的内存而不得不提前触发另一次垃圾收集动作。2.复制算法为了解决效率问题,将...

2018-08-14 15:33:24 159

原创 java垃圾回收之如何判断对象已死

垃圾回收主要管理的就是java堆,因为虚拟机栈,本地方法栈,都是线程私有的线程消亡,内存自动回收,并且对象在创建过程时,在栈中需要分配多少内存,是明确知道大小的。如何判断java堆中对象已经失去引用,就显得尤为重要。1.引用计数算法为对象添加一个计数器,有引用加1,失去引用,就减1.收集的时候收集,计数器为0的对象。这种算法,不被java虚拟机作为主流的算法所使用,是因为,java中,...

2018-08-10 15:08:42 923

原创 jdk1.8Jvm各个部分OutofMemoryError异常详解

具体解决异常的办法,查看jvm运行时各个部分的内存状态,包括垃圾回收时,内存状态,包括修改了,jvm参数后,参数是否修改成功,可以使用jdk bin下的一些性能监控工具。详情可参考这篇文章https://blog.csdn.net/qq_27224549/article/details/81902117首先:JVM运行时区域包括:程序计数器,虚拟机栈,本地方法栈,java堆,方法区(包含运行时...

2018-08-10 10:16:44 1969

原创 jvm虚拟机栈中对象的内存访问定位

通常虚拟机栈中通过对象的引用来直接访问堆中对象的数据。目前主流的访问方式有两种:1.句柄;2.直接指针。一、句柄句柄的方式,就是在java堆中划分出一块内存区域叫做句柄池,用来存放到对象实例的指针,而栈中存放的是句柄池中对应对象的地址。这种方式的好处就是,在频繁的改变java堆中的对象的时候,只需要修改句柄池指向对象的引用就可以,而不需要,修改栈中存放的句柄池中的引用。相当于做了一次中转。...

2018-08-09 10:49:40 679

rabbitmq-server-3.7.15.rar

rabbitmq windows 64位。

2019-06-15

sqlserver2000 jdbc jar

sqlserver2000 jdbc jar 文件三个jar包

2019-03-13

html2canvas.js

jspdf生成pdf插件, jsPdf.debug.js,html2canvas.js

2017-10-25

空空如也

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

TA关注的人

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