自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (1)
  • 收藏
  • 关注

原创 解析Excel工具类

pom依赖: <!-- https://mvnrepository.com/artifact/org.apache.poi/poi --> <dependency> <groupId>org.apache.poi</groupId> <artifactId&gt...

2018-10-11 18:18:11 512

原创 多线程共享数据-示例

在 Java 传统线程机制中的共享数据方式,大致可以简单分两种情况:多个线程行为一致,共同操作一个数据源:             也就是每个线程执行的代码相同,可以使用同一个 Runnable 对象,这个 Runnable 对象中有那个共享数据,例如,卖票系统就可以这么做。多个线程行为不一致,共同操作一个数据源:        也就是每个线程执行的代码不同,这时候需要用不同的Runnable 对...

2018-06-12 17:28:11 628

原创 ThreadLocal的使用

ThreadLocal 的作用和目的:用于实现线程内的数据共享,即对于相同的程序代码,多个模块在同一个线程中运行时要共享一份数据,而在另外线程中运行时又共享另外一份数据。            每个线程调用全局 ThreadLocal 对象的 set 方法,在 set 方法中,首先根据当前线程获取当前线程的ThreadLocalMap 对象,然后往这个 map 中插入一条记录, key 其实是 T...

2018-06-12 15:25:47 216

原创 对象的clone

clone对象的使用场景:            有一个对象 A,在某一时刻 A 中已经包含了一些有效值,此时可能会需要一个和 A 完全相同新对象 B,并且此后对 B 任何改动都不会影响到 A 中的值,也就是说, A 与 B 是两个独立的对象,但 B 的初始值是由 A 对象确定的。在 Java 语言中,用简单的赋值语句是不能满足这种需求的。要满足这种需求虽然有很多途径,但实现 clone()方法是...

2018-06-06 15:24:36 297

原创 Java虚拟机-读书笔记5-垃圾回收算法

1 标记-清除算法     标记-清除算法是最基础的算法.算法分为"标记"和"清除"两个阶段:首先标记出所有需要被回收的对象,在标记完成后进行统一的回收.     它的主要不足之处:     a)标记和清除两个过程效率都不够高.     b)回收之后产生大量不连续的碎片空间,可能导致无法分配内存给较大的对象时,不得不提前出发额外的垃圾收集动作.     后续的算法都是基于这种思路并对其不...

2018-05-31 17:41:58 156

原创 Java虚拟机-读书笔记4-垃圾回收(1)

    在java运行时内存区域中,程序计数器,虚拟机栈,本地方法栈3个区域随线程而生,随线程而灭.栈中的栈帧随着方法的进入和退出有条不紊地执行者出栈和入栈操作.每一个栈帧分配多少内存基本上在类结构确定下来时就已知了(尽管在运行时期会由JIT编译器进行一些优化).因此这些区域的内存分配和回收都具备确定性了.因为方法结束或线程结束,内存也自然都回收了.    而方法区和堆则不一样,一个接口的多个实...

2018-05-30 20:47:21 206

原创 Java虚拟机-读书笔记3-OutOfMemoryError异常

        除了程序计数器外,Java虚拟机内存的其他几个运行时区域都有发生OutOfMemoryError异常的可能. 本节内容的目的:     1.通过代码验证各个运行时区域存储的内容;     2.希望读者在遇到实际的内存溢出时,能够快速根据异常信息判断出那个区域的内存溢出及知道该如何处理.     虚拟机参数设置:   一  Java堆溢出: 1.1 异常构建 ...

2018-05-29 18:13:42 175

原创 Mysql分页LIMIT分析

表结构:select id from table limit 2,4;-->返回结果:3,4,5,6select id from table limit 3,4;--->返回结果:4,5,6,7select id from table limit 3,5;--->返回结果:4,5,6,7,8由以上结果可分析得到论:    limit后第二参数是返回结果集大小,也就是我们常说的页面...

2018-05-21 15:36:53 388

转载 oracle学习笔记(x)-自治事务(AUTONOMOUS_TRANSACTION)

转自:https://blog.csdn.net/lingjian519/article/details/40539081数据库事务是一种单元操作,要么是全部操作都成功,要么全部失败。在Oracle中,一个事务是从执行第一个数据管理语言(DML)语句开始,直到执行一个COMMIT语句,提交保存这个事务,或者执行一个ROLLBACK语句,放弃此次操作结束。事务的“要么全部完成,要么什么都没完成”的本...

2018-04-26 09:52:22 387

原创 Spring源码解析-读书笔记4

Spring加载Bean时,获取xml的验证模式常用的xml验证模式为DTD和XSD;DTD:即文档类型定义,是一种XML约束模式语言,是XML文件的验证机制,属于XML文件组成的一部分。DTD 是一种保证XML文档格式正确的有效方法,可以通过比较XML文档和DTD文件来看文档是否符合规范,元素和标签使用是否正确。 一个 DTD文档包含:元素的定义规则,元素间关系的定义规则,元素可使用的属性,可使...

2018-04-24 23:02:24 115

原创 Spring源码解析-读书笔记3

加载Bean    在XmlBeanFactory的构造器中调用了XmlBeanDefinitionReader的loadBeanDefinitions(resource)方法;在loadBeanDefinitions(resource)方法中loadBeanDefinitions(new EncodeResource(resource));loadBeanDefinitions(EncodeRe...

2018-04-24 22:37:01 138

原创 Spring源码解析-读书笔记2

Spring最核心的两个类:1.DefaultListableBeanFactory    XmlBeanFactory 继承自DefaultListableBeanFactory.    DefaultListableBeanFactory是整个bean加载的核心,是spring注册和加载bean的默认实现;    XmlBeanFactory和DefaultListableBeanFactor...

2018-04-24 22:06:15 132

原创 oracle学习笔记(6)-函数和包

函数:函数的创建: CREATE [OR REPLACE] FUNCTION function_name  (parameter1_name [mode] datatype [DEFAULT|:=value] [, parameter2_name [mode] datatype [DEFAULT|:=value],…]) RETURN return_datatype  AS|IS /*Dec...

2018-04-24 17:47:43 293

原创 oracle学习笔记(5)-存储过程

存储过程: 存储子程序是被命名的PL/SQL块,以编译的形式存储在数据库服务器中,可以在应用程序中进行调用,是PL/SQL程序模块化的一种体现。 PL/SQL中的存储子程序包括存储过程和(存储)函数两种。  存储子程序是以独立对象的形式存储在数据库服务器中,因此是一种全局结构,与之对应的是局部子程序,即嵌套在PL/SQL块中的局部过程和函数,其存储位置取决于其所在的父块的位置。 存储过程的创建: ...

2018-04-24 17:45:08 293

原创 oracle学习笔记(4)-游标

CURSOR是oracle系统在内存中开辟的一块工作区,其中存放select语句返回的查询结果; 使用游标时,select记过可以是任意条记录; 游标工作去中存在着一个指针(POINTER),默认指向第一条记录; 游标的类型: 显示游标:用户定义,用于处理select语句返回的多条记录; 隐式游标:系统自动进行操作,用于处理DML和返回一条记录的select语句; 定义游标: CURSO...

2018-04-24 09:39:55 650 2

原创 oracle学习笔记(3)-SQL函数

SQL函数: 数值函数: ABS(n)----------------------返回n的绝对值; CEIL(n)---------------------返回大于或等于n的最大整数; EXP(n)----------------------返回e的n次幂; FLOOR(n)-------------------返回小于或等于n的最大整数; LN(n)------------------...

2018-04-23 18:13:42 227 1

原创 oracle学习笔记(2)-SQL基础

1.DDL:create;alter;drop;audit;noaudit;revoke;grant;2.DML:insert;update;delete3.DQL:select4.事务控制:将一组DML操作组合起来,形成一个事务并进行事务控制.事务提交(COMMIT),事务回滚(ROLLBACK),设置保存点(SAVEPOINT),设置事务状态(SET TRANSACTION)5.系统控制:设置...

2018-04-23 17:13:55 286

原创 oracle学习笔记(1)

一.数据库逻辑结构单元: 1.数据块(BLOCK):最小的I/O单元, 块头部:标题(块的物理地址,所属段的类型),表目录(表的信息),行目录(行地址等信息); 存储区:数据区(数据对象),空闲区(未使用的空间,用于存放 新的行或者用于更新已存在的行); 2.区(EXTENT):由一系列连续的数据块构成,是存储空间分配和回收的最小单位; 3.段(SEGMENT):由多个扩展区构成,代表特定数...

2018-04-23 17:03:47 147

原创 Dubbo原理

provider:1,spring在遇到dubbo的命名空间时,就会回调DubboNamespaceHandler;2,用DubboBeanDefinitionPaser来解析bean3,在ServiceConfig拿到提供服务的实际类的ref,通过ProxyFactory的getInvoker方法生成一个AbstractProxyInvoker对象,4,通过serviceConfig将invok...

2018-04-11 10:48:33 248

原创 Spring源码解析-读书笔记1

Spring的整体架构   1. Core Container(核心容器)包含        Core:提供SPring的基本核心工具类,是其他组件的核心;        Beans:访问配置文件,创建和管理bean,进行IOC/DI操作;     Context:构建与于Core和Beans模块之上,添加了对国际化,事件传播,资源加载,Context透明创建的支持;关键接口:Applicatio...

2018-04-07 22:48:06 378

转载 提高mysql千万级大数据SQL查询优化30条经验

转自:http://www.jincon.com/archives/120/ 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null

2017-07-20 10:01:22 218

原创 <Java虚拟机>读书记录2-对象的创建

虚拟机接收到new指令: 1.首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、解析和初始化过。         如果没有,那必须先执行相应的类加载过程。 2.在类加载检查通过后,接下来虚拟机将为新生对象分配内存。 对象所需内存的大小在类加载完成后便可完全确定,为对象分配空间的任务等同于把一块确定大小的内存从Java堆中划分出来。 ...

2017-07-12 17:06:05 267

原创 <Java虚拟机>读书记录1-JVM运行时数据区域

运行时常量池: 用于存放编译时生成的各种字面量和符号引用.在类加载后存放到方法区的常量池中; 运行时也可以将常量放入常量池.如:String的intern()方法...

2017-07-12 14:48:17 267

空空如也

空空如也

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

TA关注的人

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