自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JVM--简单明了的介绍类加载过程

1.加载 用.class文件为例,先把class文件放到方法区,然后将静态存储结构转化为方法区的运行时数据结构,然后在内存生成一个代表此类的java.lang.class对象,class对象比较特殊,是存在与方法区中的,作为方法区这个类中各个数据的访问入口。 几点解释: 1.什么叫静态存储结构转化为方法区的运行时数据结构? 通俗的解释就是class文件中的数据存储结构,jvm是不能直接使用的,要将...

2019-04-13 20:38:22 275

原创 HashMap之put方法源码理解总结

引入 在理解hashmap的put方法之前,需要对hashmap有一些基础的理解。 **1.hashmap的数据结构:**数组 + 链表 + 红黑树 2.put数据的大概流程: 1.首次put数据 当定义了一个hashmap结构,在第一次调用put方法进行,添加数据的时候,首先会对hashmap结构进行初始化,生成长度为16的数组。 然后插入的数据调用hash(key)生成hash值,用来定位数据...

2019-03-19 14:57:59 201

原创 java并发--用实例从内存角度分析volatile

引入 详细了解volatile,sychronizde以及lock推荐阅读。 JVM内存模型: https://blog.csdn.net/FortressBesieged/article/details/88066898 volatile: https://www.cnblogs.com/dolphin0520/p/3920373.html synchronized lock 正文: volat...

2019-03-19 14:52:46 146

原创 JVM--java运行时数据区域与变量在jvm中的存储理解总结

引入 在介绍运行时数据区之前,先介绍一下JVM的基本结构。 JVM 的结构基本上由 4 部分组成: 类加载器,在 JVM 启动时或者类运行时将需要的 class 加载到 JVM 中。 执行引擎,执行引擎的任务是负责执行 class 文件中包含的字节码指令,相当于实际机器上的 CPU。 内存区,也就是运行时数据区,将内存划分成若干个区以模拟实际机器上的存储、记录和调度功能模块,如实际机器上的各种功...

2019-03-04 22:14:49 434

原创 JVM--java内存模型(JMM)理解总结

引入 我们知道,Java 程序是需要运行在 Java 虚拟机上面的。Java 内存模型(Java Memory Model,JMM)就是一种符合内存模型规范的,屏蔽了各种硬件和操作系统的访问差异的,保证了 Java 程序在各种平台下对内存的访问都能保证效果一致的机制及规范。 Java内存模型的抽象示意图 主内存与工作内存 java 内存模型规定了所有的变量都存储在主内存中,每条线程还有自己的工作...

2019-03-01 19:55:51 194

原创 HashMap的put方法源码流程理解

几个常量: 数组的默认大小16、扩容因子0.75、所以第一个扩容临界节点个数12、链表上限8,大于8链表转化为红黑树,但有一个前提,此时整个数据结构中的节点数要大于64,如果小于64,链表的长度为8时,将进行扩容、红黑树中的阶段个数如果小于6将红黑树转化为链表。 节点node<k,v>中的内容 Hash值:代表存储在数组中的那一个位置 Key,value Node<k,v>...

2019-04-25 09:37:43 288

原创 Spring中的IOC与DI理解总结

IOC

2019-03-20 09:50:24 322

原创 (大数据)多线程(三)

java JMS技术 JMS即Java消息服务(Java Message Service)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。 JMS体系架构 JMS由以下元素组成。 JMS提供者:连接面向消息中间件的,JMS接口的一个实现。提供者可以是Java平台的JMS实现,也可以是非Java平台的面向消息中间件的...

2018-12-26 16:35:40 199

原创 (大数据)多线程(二)

java并发包 JDK5.0 以后的版本都引入了高级并发特性,大多数的特性在java.util.concurrent 包中,是专门用于多线程发编程的,充分利用了现代多处理器和多核心系统的功能以编写大规模并发应用程序。主要包含原子量、并发集合、同步器、可重入锁,并对线程池的构造提供了强力的支持。 什么是线程池? 线程池的创建方式有哪些? 线程池的5中创建方式: Single Thread Execu...

2018-12-24 14:44:11 201

原创 (大数据)多线程(一)

什么是进程?什么是线程? 进程:不同的应用程序由JVM在内存中分配的独立的运行空间。 线程:进程内部继续划分的独立的运行空间。 什么是多线程? 在一个进程中同时开启多个线程,多个线程同时去完成一个任务,提高效率。 多线程的原理是什么? cpu在线程中快速的做时间片的切换,本质上是轮询的。 有哪些实现多线程的方式? 1.继承thread类,实现Runnable接口。 synchronized同步关键...

2018-12-20 16:21:45 204

原创 (大数据)zookeeper(二)

zookeeper的命令行客户端 zookeeper命令行客户端主要功能为:写数据,读数据,监听。 zookeeper的数据结构 路径树形图:检索其他节点通过路径的方式访问,每个节点也可以存放数据。 在根结点下创建名为app1的子节点 节点类型 1、Znode有两种类型: 短暂(ephemeral)(断开连接自己删除) 持久(persistent)(断开连接不删除) 2、Znode有四种形式的...

2018-12-18 14:49:29 142

原创 (大数据)zookeeper(一)

什么是zookerper Zookeeper是一个分布式协调服务(第三方);就是为用户的分布式应用程序提供协调服务。 本身也是一个分布式程序。 Zookeeper本身就是一个分布式程序(只要有半数以上节点存活,zk就能正常服务)。 主要提供两个功能。 管理(存储,读取)用户程序提交的数据(数据大部分都为状态数据,所以zk的负载不会很大); 并为用户程序提供数据节点监听服务; 大数据中很多使用zk进...

2018-11-21 23:17:06 193

原创 (大数据)linux基础

第一天视频,02中详细介绍了配置vmvare和装centos的细节。 linux目录结构 bin:普通功能程序 dev:硬件设备内容 etc:约定俗成放置配置文件 home:普通用户的目录 lib:c语言的动态链接库 usr:公用的软件安装位置 sbin:系统管理程序 tmp:名词目录 linux的网络配置相关 DNS:记录了域名和ip的对应关系 本地系统中有一个hosts文件,可以用来配置域名。...

2018-11-15 15:37:28 237

原创 Maven

简介 Maven是基于POM(工程对象模型),通过一小段描述来对项目的代码、报告、文件进管理的工具。 Maven是一个跨平台的项目管理工具,它是使用java开发的,它要依赖于jdk1.6及以上 Maven主要有两大功能:管理依赖、项目构建。 依赖指的就是jar包。 理解 1.对于jar包的管理非常方便 它有一个jar包库,当使用某个jar包时,直接在pom.xml中配置即可。而且对于jar包的版本...

2018-10-05 10:23:56 140

原创 java基础--集合

简介 同类型基本数据类型,可以使用数组存储,不同的数据类型使用StringBuffer存储,但是最终一定要转化成String才能使用。 对象用于封装数据,对象多了需要存储,对象个数不确定,使用集合存储。 (注:学习体系方法:看顶层,用底层。) 特点 1.集合用于存储对象的容器。 2.集合的长度可变。 3.集合中不可以存储基本数据类型。 常见方法 可以不必记忆方法的名称,用理解的方式理解常用的功能。...

2018-10-04 19:59:21 150

原创 JAVA基础--抽象类

特点 1.子类必须覆盖抽象类的全部抽象方法,否则子类还是抽象类。 2.抽象方法必须定义在抽象类中,该类也必须被abstract修饰。 3.抽象类不可以被实例化。 4. 抽象类中可以有构造方法,用于给子类初始化。 5. 抽象类中可以定义非抽象方法,但是很少见。 6. 抽象关键字不可以与那些关键字共存? private: private修饰的变量,只能在本类中访问,但是抽象类中的内容需要被子类覆盖。...

2018-09-20 10:23:50 274

原创 (TT)Redis

Linux下安装redis 1.安装linux系统 2.安装ssh,开启secure远程连接。 3.上传压缩包 4.tar -zxvf redis 解压 5.执行make命令 遇到问题 错误原因:未安装gcc 解决:apt-get install gcc 第二个问题: 错误原因:分配器allocator,如果有MALLOC 这个环境变量,会有用这个环境变量的去建立Red...

2018-09-12 10:50:02 204

原创 java文件操作

常用方法,变量 //获取文件 Path path = Paths.get( "C:\\Users\\admin\\Desktop\\OUTPUTa1.spc"); //按行读取文件内容,存放到链表中 List&lt;String&gt; lines = Files.readAllLines(path, Charset.forName("GB2312")); //按照空格(不管多少空格)分隔字符串...

2018-09-08 19:27:55 139

原创 (TT)httpclient

使用步骤 第一步:把HttpClient使用的jar包添加到工程中。 第二步:创建一个HttpClient的测试类 第三步:创建测试方法。 第四步:创建一个HttpClient对象 第五步:创建一个HttpGet对象,需要制定一个请求的url 第六步:执行请求。 第七步:接收返回结果。HttpEntity对象。 第八步:取响应的内容。 第九步:关闭HttpGet、HttpClie...

2018-09-07 09:40:32 171

原创 (TT三)Nginx+fastDFS

aa

2018-09-06 20:58:05 164

原创 (TT四)商品参数规格

aa

2018-09-06 20:57:44 217

原创 (TT二)商品列表

商品展示 技术点 easyui-datagrid控件+pagehelper+mybatis Easyui中datagrid控件要求的数据格式为: {total:”2”,rows:[{“id”:”1”,”name”,”张三”},{“id”:”2”,”name”,”李四”}]} 思考点 创建EasyUIDataGridResult 的pojo,存储后端返回给前台的数据类型。 商品添...

2018-09-06 20:56:59 141

原创 (TT五)首页内容管理

首页内容展示 技术点 easyui-datagrid+pagehelper 新增内容 js实现功能逻辑: 1.提示新增内容必须选择分类,且选择的分类为叶子节点。 2.

2018-09-06 20:49:51 188

原创 (TT一)MAVEN管理项目

简介 使用maven管理工程。 1、依赖管理 2、项目构建 maven使用实例 淘淘商城(ssm) **1. 创建taotao-parent,其为最大的父工程,打包方式为pom。 在pom.xml中集中集中定义依赖版本号,添加依赖组件。** &amp;amp;amp;lt;project xmlns=&amp;amp;quot;http://maven.apache.org/POM/4.0.0&amp;amp;quot; xmlns:xsi=&amp;amp

2018-09-06 19:38:14 202

原创 (TT)分页插件PageHelper

简述 PageHelper分页插件,与Mybatis配合使用实现分页功能十分方便。 该插件目前支持Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库分页。 原理 实现了mybatis的拦截器接口,对sql语句进行编辑,然后把修改后sql语句设置回去。 使用方法 1. 添加jar包 mybatis-paginator-1.2.1...

2018-09-06 19:15:49 148

空空如也

空空如也

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

TA关注的人

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