`
不平凡的人
  • 浏览: 35422 次
  • 性别: Icon_minigender_1
  • 来自: 嘉峪关
社区版块
存档分类
最新评论
文章列表
本文从以下方面阐述spring源码环境搭建(基于window操作系统)   一、环境准备 二、搭建过程遇到的问题 三、测试用例     一、环境准备   1、搭建前准备(以我的工具版本为例) IDEA (2018.03) JDK(jdk1.8.0_191) Gradle4.9 Spring5.0x   2、Gradle环境搭建   (1)gradle下载地址 https://services.gradle.org/distributions/   (2)下载好的gradle解压即可     (3)环境变量配置 GRADLE_HOME: D:\ ...

volatile的使用

本文主要介绍volatile关键字的用法   一、cpu缓存模型   计算机的存储设备与处理器的运算速度有量级的差异,因此添加一个硬件设备,使其读写速度尽可能接近cpu的处理速度,该设备就是高速缓存。   高速缓存的存储交互解决了处理器与内存之间速度的矛盾,但也引入了一个新问题,缓存一致性问题(下文讲解)。   高速缓存:内存与处理器之间的桥梁。将运算需要使用的数据复制到缓存中,让处理器尽快执行,当运算结束后再从缓存同步回主内存。                                                       CPU缓存模型     二 ...
本文介绍内容如下: 一、运行时数据区域 二、各运行时数据区域特点   一、运行时数据区域 (1)线程共享:堆、方法区 (2)线程隔离:程序计数器、虚拟机栈、本地方法栈   二、各运行时数据区域特点 1、程序计数 ...
一、前言 中大型项目中,一旦遇到数据量比较大,小伙伴应该都知道就应该对数据进行拆分了。有垂直和水平两种。   垂直拆分比较简单,也就是本来一个数据库,数据量大之后,从业务角度进行拆分多个库。如下图,独立 ...
本文简单介绍一下垃圾回收的概念及算法   一、垃圾回收算法 二、垃圾回收停顿现象 三、对象如何进入老年代 四、TLAB区域     一、垃圾回收算法   垃圾回收(Garbage collection,简称GC),类比生活中的垃圾,会把垃圾丢 ...

虚拟机参数

对虚拟机参数的配置,主要围绕堆、栈、方法区进行配置。   说明: ① -XX:系统级别的(JVM)配置,配置日志信息,或者是jvm使用什么样的垃圾回收器 ② 非-XX:应用层的配置 ③“+”:表示启用 ④“-”:表示禁用   1、堆参数配置   (1)基本参数配置 -XX:+PrintGC  使用该参数,虚拟机启动后,遇到GC就会打印日志 -XX:+UseSerialGC 配置串行垃圾回收器 -XX:+PrintGCDetails 查看详细信息,包括各个区的情况 -XX:+PrintCommandLineFlags 可以将隐式或者显式传给虚拟机的参数输出   ...

JVM概述

本文从以下方面对JVM进行描述:   一、Java虚拟机概述与基本概念 二、堆、栈、方法区   一、Java虚拟机概述与基本概念   1、虚拟机概述 所谓的虚拟机,就是一台虚拟的机器。是一款软件,用来执行一系列的虚拟计算指 ...
本文主要介绍一下ActiveMQ消息独占模式   1、消息独占模式(Exclusive Consumer)   Queue中的消息是按照顺序被分发到consumers的。然而,当你有多个consumers同时从相同的queue中提取消息时,你将失去这个保证。因为这些消息是被多个线程并发的处理。有的时候,保证消息按照顺序处理是很重要的。例如,你可能不希望在插入订单操作结束之前执行更新这个订单的操作。 ActiveMQ从4.x版本起开始支持Exclusive Consumer (或者说Exclusive Queues)。 Broker会从多个consumers中挑选一个consumer来 ...
本文简单介绍ActiveMQ使用Mysql数据库实现消息的持久化存储   一、ActiveMQ配置修改 二、代码示例     一、ActiveMQ配置修改 对于ActiveMQ需要保证消息的可靠性,需要持久化进行存储,默认情况下使用kahadb进行数据的默认持久化存储技术,同时也可以使用leveldb、mysql、oracle 此次,使用mysql对消息进行持久化操作。   1、active.xml文件的修改 (1)数据源配置信息    <persistenceAdapter> <!-- 默认使用kahadb进行持久化 ...
本文主要以一个简单的示例展示ActiveMQ收发消息:   一、ActiveMQ说明 二、代码示例   一、ActiveMQ说明 1、当前ActiveMQ的最新版本为: ActiveMQ 5.15.3 Release  ====》点击:官网下载ActiveMQ地址   2、下载好之后解压,然后启动ActiveMQ,启动时要根据系统的位数来选择     二、代码示例   导入依赖jar包 <dependency>
本文从以下方面简单介绍一下ActiveMQ   一、消息中间件背景 二、简述JMS规范 三、ActiveMQ简介   一、消息中间件背景   当前如RMI,RPC中间件技术应用到各个领域,但面对复杂度越来越高的分布式系统,上述中间件有一下局 ...
本文以简单示例展示spring boot与mybatis的整合过程: (一)示例的目录结构     1、pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" ...
spring boot整合mybatis时注入mapper失败问题:   1、关于@Mapper注解导包失败原因:  原因分析: 导入的Mybatis核心包的版本太低,如下图所示,因而导致mybatis核心包的版本为mybatis-3.4.4.jar,因此导致了@Mapper注解导包失败。     2、spring boot整合mybatis,注入mapper失败   (1)解决该问题办法在Mapper所在的接口上加入@Mapper注解,前提要解决@Mapper注解导包成功。 (2)@Mapper注解导包成功,执行如下步骤:          
本文简单介绍一下spring boot+JPA实现简单的增删改查功能   一、项目结构简述 二、搭建spring boot+jap环境 三、代码示例 四、spring boot的启动方式   一、项目结构简述   1、项目的目录结构注意点   问题说明: ①使用内置服务器启动springboot项目时,会从@SpringBootApplication修饰类所在的包开始,加载当前包和所有子包下的类,将由@Component @Repository @Service @Controller修饰的类交由spring进行管理; ②如上图,项目中的启动类为Applacat ...

适配器模式

1、适配器模式分类 (1)对象适配器 (2)类适配器   2、对象适配器 (1)概念:将一个类的接口转为另外一个类的接口,让原来不兼容得类变得兼容 (2)原理:          对象适配器采用组合的方式,适配器对象实现 ...
Global site tag (gtag.js) - Google Analytics