自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 Java虚拟机JVM之类文件结构

一、JVM的“无关性”JVM的无关性主要包括以下两点:平台无关性,任何平台都能运行java代码 语言无关性:JVM能运行除JAVA以外的其他代码Java 源代码首先需要使用 Javac 编译器编译成 .class 文件,然后由 JVM 执行 .class 文件,从而程序开始运行。JVM 只认识 .class 文件,它不关心是何种语言生成了 .class 文件,只要 .class 文件符...

2019-06-28 09:31:51 284

原创 Java虚拟机JVM之类加载机制与类加载器

一、类的生命周期类的生命周期加载 --> 验证 --> 准备 --> 解析 --> 初始化 --> 使用 --> 卸载 |<------- 连接 ------->||<------------- 类加载 ---------------->|类的生命周期一共有 7 个阶段,其中前五个阶段较为重要,统称为类加...

2019-06-28 08:59:03 341

原创 Java虚拟机JVM之内存分配与回收策略

内存分配与回收策略对象的内存分配,就是在堆上分配(也可能经过 JIT 编译后被拆散为标量类型并间接在栈上分配),对象主要分配在新生代的 Eden 区上,如果开启了本地线程分配缓冲,将按线程优先在TLAB上分配,少数情况下可能直接分配在老年代,分配规则不固定,取决于当前使用的垃圾收集器组合以及相关的参数配置。1、对象优先在 Eden 分配大多数情况下,对象在新生代 Eden 区中分配。当...

2019-06-27 08:56:52 285

原创 Java虚拟机JVM之HotSpot算法实现与垃圾收集器

在上一章节讲解了判断对象是否存活于垃圾回收算法我们已经对虚拟机是进行 GC 的流程有了一个大致的了解。但是,在 HotSpot 虚拟机中,高效的实现这些算法也是一个需要考虑的问题。所以,接下来,我们将研究一下 HotSpot 虚拟机到底是如何高效的实现这些算法的,以及在实现中有哪些需要注意的问题。一、HotSpot算法实现1、枚举根节点2、安全点3、安全区域二、垃圾收集器1...

2019-06-27 08:56:40 578

原创 springcloud——使用Feign实现声明式REST调用

上一篇我使用了RestTemplate+Eureka进行负载均衡的服务消费,现在讲述如何使用feign来实现Rest风格的负载均衡服务消费一、概述Feign是一个声明式的伪Http客户端,它使得写Http客户端变得更简单。使用Feign,只需要创建一个接口并注解。它具有可插拔的注解特性,可使用Feign 注解和JAX-RS注解。Feign支持可插拔的编码器和解码器。Feign默认集成了Ri...

2019-06-26 17:12:40 217

原创 springcloud—— Feign的文件上传实现

在Spring Cloud封装的Feign中并不直接支持传文件,但Feign官方提供了子项目Feign-form来实现跨服务的文件上传服务提供方(接收文件)服务提供方的实现比较简单,就按Spring MVC的正常实现方式即可,比如:@PostMapping(value = "/fileupload", consumes = MediaType.MULTIPART_FORM_DATA_...

2019-06-26 16:42:28 466

原创 2.zookeeper常用命令详解

zkCli.sh客户端连接到ZK服务器的语法为:zkCli.sh -timeout 5000 -r -server ip:port连接参数解释:-timeout:表示客户端向zk服务器发送心跳的时间间隔,单位为毫秒。因为zk客户端与服务器的连接状态是通过心跳检测来维护的,如果在指定的时间间隔内,zk客户端没有向服务器发送心跳包,服务器则会断开与该客户端的连接。参数5000,表示z...

2019-06-26 09:22:29 355

原创 Java虚拟机JVM之垃圾回收策略与算法

本章节主要介绍垃圾回收策略与算法一、概述二、判定对象是否存活1、引用计数法2、可达性分析法(主流)三、引用类型1、强引用(Strong Reference)2、软引用(Soft Reference)3、弱引用(Weak Reference)4、虚引用(Phantom Reference)四、宣告对象死亡的两次标记过程1、第一次标记并进行一次筛选。2、...

2019-06-26 08:59:39 219

原创 Java虚拟机JVM之Java对象的创建、内存布局和访问

这一小节将对 JVM 对 Java 堆中的对象的创建、布局和访问的全过程进行讲解。一、对象的创建1、类加载检查虚拟机在解析.class文件时,若遇到一条 new 指令,首先它会去检查常量池中是否有这个类的符号引用,并且检查这个符号引用所代表的类是否已被加载、解析和初始化过。如果没有,那么必须先执行相应的类加载过程。2、为新生对象分配内存对象所需内存的大小在类加载完成后便可完全确...

2019-06-25 08:40:21 430

原创 Java虚拟机JVM之Java内存结构与内存溢出异常

一、java内存架构JAVA内存结构图1、程序计数器定义:程序计数器也称PC寄存器,是一块较小的内存空间,可以看做当前线程所执行的字节码指令的行号指示器作用:字节码解释器通过改变程序计数器的值来进行分支、循环、跳转、异常处理、线程恢复等功能;在多线程情况下,程序计数器记录的是当前线程执行的位置,从而当线程切换回来时,就知道上次线程执行到哪了特点:如果当前线程所执行的...

2019-06-25 08:39:41 245

原创 springcloud——客户端Eureka Client实现负载均衡 Ribbon

一、简介Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具。简单的说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等。简单的说,就是在配置文件中列出Load Balancer(简称LB)后面所有的机器,R...

2019-06-24 09:05:13 1406

原创 springcloud——微服务注册与发现 eureka

一、什么是服务发现微服务将传统的"巨石"应用拆分成一个一个的组件应用,每个组件应用提供特定的服务,可以是一个,也可以是多个,并且组件所含服务应该是可以动态扩展的,随着时间推移、系统进化,可任意拆分、合并。组件化应用和颗粒化的服务,遍布在系统的各个角落,由不同的项目成员进行维护,微服务的核心是化整为零、各司其职,这就要求开发人员不得操作其业务或服务范围以外的数据模型等资源,只能通过接口的访...

2019-06-19 09:43:12 242

原创 Java的异常处理——Throwable、Error和Exception

异常指不期而至的各种状况,如:文件找不到、网络连接失败、除0操作、非法参数等。异常是一个事件,它发生在程序运行期间,干扰了正常的指令流程。Java 异常的概念Java语言在设计的当初就考虑到这些问题,提出异常处理的框架的方案,所有的异常都可以用一个异常类来表示,不同类型的异常对应不同的子类异常(目前我们所说的异常包括错误概念),定义异常处理的规范,在JDK1.4版本以后增加了异常链机制,从...

2019-06-17 21:18:13 1005

原创 springcloud详解——什么是微服务?走进微服务

一、什么是微服务就目前而言,对于微服务业界并没有一个统一的、标准的定义(While there is no precise definition of this architectural style)但通常而言, 微服务架构是一种架构模式或者说是一种架构风格,它提倡将单一应用程序划分成一组小的服务,每个服务运行在其独立的自己的进程中,服务之间互相协调、互相配合,为用户提供最终价值。服务...

2019-06-17 00:05:12 435

原创 Maven详解——idea在使用maven聚合工程时其中一个子模块在maven projects中变成灰色,不能进行自动导包的异常

今天在使用idea写demo时,使用maven进行聚合工程时,删除了一次子模块,再重新进行创建的时候,maven自动导入依赖失去效果。在maven profiles中变成灰色:造成这个的原因可能是在进行删除模块的时候,忽略了此名称的maven模块,可以尝试如下解决方法:在idea中maven的setting中找到ignored files,看右边的面板中是否将变灰的maven模块忽...

2019-06-16 21:23:04 2655 4

原创 Maven详解——冲突解决

Maven详解—— 概述Maven详解—— 安装Maven详解——IDEA创建Maven工程Maven详解——Maven的常用命令Maven详解——依赖管理Maven详解——冲突解决冲突解决1、依赖 、依赖传递 、依赖冲突1.1什么是依赖 :jar就是依赖1.2什么是依赖传递:spring-context.jar 依赖了spring-ao...

2019-06-15 21:04:20 394

原创 Maven详解——依赖管理

Maven详解—— 概述Maven详解—— 安装Maven详解——IDEA创建Maven工程Maven详解——Maven的常用命令Maven详解——依赖管理Maven详解——冲突解决依赖管理1、Maven插件Maven是一个核心引擎,提供了基本的项目处理能力和建设过程的管理,以及一系列的插件是用来执行实际建设任务。maven插件可以完成一些特定的功...

2019-06-15 20:36:09 421

原创 Maven详解——Maven的常用命令

Maven详解—— 概述Maven详解—— 安装Maven详解——IDEA创建Maven工程Maven详解——Maven的常用命令Maven详解——依赖管理Maven详解——冲突解决Maven的常用命令1、idea中maven常用命令2. 常用的命令 clean 清理target目录 compile:编译 package :打...

2019-06-15 20:26:28 971

原创 Maven详解——IDEA创建Maven工程

Maven详解—— 概述Maven详解—— 安装Maven详解——IDEA创建Maven工程Maven详解——Maven的常用命令Maven详解——依赖管理Maven详解——冲突解决IDEA创建Maven工程1、IDEA指定本地Maven2、创建java工程2.1 创建java工程2.2 java工程目录结构2.3 ...

2019-06-15 20:22:31 464

原创 Maven详解—— 安装

Maven详解—— 概述Maven详解—— 安装Maven详解——IDEA创建Maven工程Maven详解——Maven的常用命令Maven详解——依赖管理Maven详解——冲突解决Maven的安装1、下载Maven官网下载地址:http://maven.apache.org/download.cgi2、安装Maven将Maven压缩包解压,...

2019-06-15 20:10:19 353

原创 Maven详解—— 概述

Maven详解—— 概述Maven详解—— 安装Maven详解——IDEA创建Maven工程Maven详解——Maven的常用命令Maven详解——依赖管理Maven详解——冲突解决第1章 Maven概述1.1 Maven的概念Maven是项目进行模型抽象,充分运用的面向对象的思想,Maven可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具。Ma...

2019-06-15 19:43:41 480

原创 yum安装保留rpm源文件

在linux上,使用yum安装,默认安装完成之后会删除下载的rpm包;想要yum安装软件后,还保留安装包,那么需要修改/etc/yum.conf配置文件中的keepcache参数。[root@hadoop ~]# cat /etc/yum.conf[main]cachedir=/var/cache/yum/$basearch/$releasever 【安装包保存位置】keepca...

2019-06-14 09:14:36 435

原创 微信小程序获取openid

小程序获取openid小程序中的代码:// 登录wx.login({ success: res => { // 发送 res.code 到后台换取 openId, sessionKey, unionId var code = res.code; // 项目路径 var serverUrl = this.serverUrl; // ...

2019-06-12 11:17:13 179

原创 微信小程序 wx.request POST方式提交数据,后台接收不到数据

一开始的代码是:wx.request({ url: serverUrl+'/user/register', method: 'post', data: { 'userName': userName }, success: function(res){ console.log(res); }});发现后台根本接收不到数据,最后发现要修改一下请求头...

2019-06-12 00:16:50 3908 1

原创 数据库配置文件jdbc.properties用户名密码加密

项目框架:spring我们在开发应用时,需要连接数据库,一般把数据库信息放在一个属性配置文件中,比如jdbc.properties,具体的内容jdbc.properties配置文件jdbc.url=jdbc:mysql://127.0.0.1:3306/testjdbc.username=rootjdbc.password=123456里面用明文的方式存储着数据库的敏感信息用...

2019-06-05 16:53:10 3467 1

原创 一个对称加密解密的工具类

public final class EncryptionUtil { public static void main(String[] arrg){ String value = "123456"; System.out.println("value is : "+ value); String enc = encr...

2019-06-05 16:46:34 1325 1

原创 springboot整合mybati逆向工程

在pom.xml文件中添加插件<plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.2</version&g...

2019-06-04 10:43:21 122

原创 稀疏数组

稀疏数组(SparseArray): 首先可以先看个例子:1、编写一个五子棋的程序,可以使用二维数组的方式来实现2、问题分析:因为二维数组的很多值是默认为0,因此记录了很多没有意义的数据3、解决方法:使用稀疏数组的方式,只记录有意义的数据介绍: 所谓稀疏数组就是数组中大部分的内容值都未被使用(或都为零),在数组中仅有少部分的空间使用。因此造成内存空...

2019-06-02 17:34:00 127

空空如也

空空如也

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

TA关注的人

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