自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 字符串常量池、运行时常量池、class常量池分别到底都在哪?

首先明确class常量池、运行时常量池、字符串常量池不是同一个概念。常量池表(Constant Pool Table)常量池表(Constant Pool Table)是Class文件(字节码文件)的一部分,在编译阶段,用于存放编译期生成的各种字面量与符号引用,这部分内容将在类加载后存放到方法区的运行时常量池中(运行时常量池就是常量池在程序运行时的称呼)。常量池,可以看做是一张表,虚拟机指令根据这张常量表找到要执行的类名,方法名,参数类型、字面量等信息。运行时常量池( Runtime Constant

2021-02-07 15:44:29 1611

转载 ThreadLocal 全面解析!一篇文章彻底搞懂 ThreadLocal

真的没有那么简单的 ThreadLocal:ThreadLocal 的 key 是弱引用,那么在 threadLocal.get() 的时候,发生 GC 之后,key 是否为 null? ThreadLocal 中 ThreadLocalMap 的数据结构? 的 Hash 算法? ThreadLocalMap 中 Hash 冲突如何解决? ThreadLocalMap 扩容机制? ThreadLocalMap 中过期 key 的清理机制?探测式清理和启发式清理流程? ThreadLocalM

2021-02-01 17:18:27 769

原创 Java类加载过程详解

类的生命周期类的加载类加载过程加载链接验证准备解析初始化总结首先我们先简单了解一下整个JVM的体系结构是怎样的,如下图所示(图1):再详细具体一点(图2):上面的图片有些地方看不懂没关系,先在脑子里大体有个印象。我们这篇文章讲的是类的加载过程,所以在讲类加载之前先要知道类的生命周期是一个怎样的过程。如下图所示(图3):类的生命周期一共有5个阶段,分别是:1.加载(Loading)2.链接(Linking)3.初始化(Initialization)4.使用(Using)5.卸载(U

2021-01-29 17:46:58 3164 6

原创 JAVA多线程与高并发常见知识点梳理

一、并发基础1.什么是进程?进程就是程序的一次执行过程,是系统程序执行的基本单位,因此进程是动态的。系统运行一个程序即是一个进程从创建,运行到消亡的过程。在java中,当我们启动main函数的时候其实就是启动了一个jvm进程,而main函数所在的线程就是这个进程中的一个线程,也叫主线程。2.什么是线程?线程跟进程类似,是资源调度的最小单位。一个进程包含一个或多个线程,在进程中多个线程共享进程中的堆和方法区,线程拥有自己的程序计数器,虚拟机栈和本地方法栈。所以系统在产生一个线程,或是在各个线程之间

2021-01-27 11:10:09 400

原创 synchronized锁的升级过程详解

synchronized关键字解决的是多个线程之间访问资源的同步性,synchronized关键字可以保证被它修饰的方法或者代码块在任意时刻只能有一个线程执行。在 Java 早期版本中,synchronized属于重量级锁,效率低下。为什么呢?因为监视器锁(monitor)是依赖于底层的操作系统的Mutex Lock来实现的,Java 的线程是映射到操作系统的原生线程之上的。如果要挂起或者唤醒一个线程,都需要操作系统帮忙完成,而操作系统实现线程之间的切换时需要从用户态转换到内核态,这个状态...

2021-01-22 17:14:20 1556 1

转载 根据开始日期结束日期获取中间日期

public static List<Date> findDates(Date dBegin, Date dEnd) { List lDate = new ArrayList(); lDate.add(dBegin); Calendar calBegin = Calendar.getInstance(); // 使用给定的 Date 设置此 Calendar 的时间 calB...

2020-12-21 14:13:47 655

原创 简单了解类中属性方法

Java变量Java语言支持的变量类型有:类变量:独立于方法之外的变量,用 static 修饰。 实例变量:独立于方法之外的变量,不过没有 static 修饰。 局部变量:类的方法中的变量。一、 变量属性成员变量:类中方法外声明变量 分类:类变量:使用static修饰符修饰的成员变量,又称静态变量。 实例变量:未使用static修饰符修饰的成员变量,也就是非静态变量。类变量与实例变量的区别?类变量:使用static修饰符修饰; 类变量是类的所有对象共享的; 可...

2020-12-07 15:08:29 304

原创 同步异步的区别和同步树加载异步树加载区别

同步异步的区别 同步和异步关注的是消息通信机制(synchronous communication/ asynchronous communication)。 同步就是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会一直等待下去,直到收到返回信息才继续执行下去。 异步是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回时系统会通知进程进行处理,这样可以提高执行的效率。 很多下馆子吃饭的例子很经典。同步就是一群人去饭...

2020-11-03 17:03:35 1248

转载 Java常见集合的默认大小及扩容机制

在面试后台开发的过程中,集合是面试的热话题,不仅要知道各集合的区别用法,还要知道集合的扩容机制,今天我们就来谈下ArrayList 和 HashMap的默认大小以及扩容机制。在 Java 7 中,查看源码可以知道:ArrayList 的默认大小是 10 个元素,HashMap 的默认大小是16个元素(必须是2的幂,为什么呢???下文有解释)。这就是 Java 7 中 ArrayList 和 H...

2019-07-24 23:42:20 652

转载 SQL UNION 和 UNION ALL 操作符

SQL UNION 操作符UNION 操作符用于合并两个或多个 SELECT 语句的结果集。请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。SQL UNION 语法SELECT column_name(s) FROM table_name1UNIONSELECT column_...

2019-04-18 09:58:18 132

转载 oracle性能优化-模糊查询

转自:https://blog.csdn.net/duduhonghong/article/details/80648772当oracle数据库数据量非常大时,使用双%的模糊查询效率会变得比较慢,因为双%的模糊查询并没有使用索引,而是用的全表扫描。而单%则使用了索引进行检索。以下是几种检索方式的效率对比,表中有800万条数据。1.使用正则表达式进行检索2.使用双%进行模糊查询...

2019-03-04 19:57:19 815

转载 Oracle 条件查询 模糊查询

转自:https://www.cnblogs.com/ty-v/p/7845990.html示例:1) 查询出工资高于3000的员工信息select *froms_emp ewhere e.salary&gt;3000;2) 查询出名为Carmen的员工所有信息select * from s_emp ewheree.first_name ...

2019-03-04 19:53:57 516

转载 存储过程

转自:http://www.cnblogs.com/panmy/p/5222995.html什么是存储过程呢?存储过程就是作为可执行对象存放在数据库中的一个或多个SQL命令。通俗来讲:存储过程其实就是能完成一定操作的一组SQL语句。那为什么要用存储过程呢?1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提...

2019-03-04 19:47:59 179

转载 Oracle数据库(二)

转自:https://www.cnblogs.com/qneverever/p/4501876.html表空间是数据库逻辑结构的一个重要组件,可以存放各种应用对象,如表、索引。每一个表空间由一个或多个数据文件组成。表空间分类: 类别 说明 永久性表空间 一般保存表、视图、过程和索引等的数据。SYSTEM、SYSAUX...

2019-03-04 19:46:51 232

转载 Oracle数据库(一)

转自:https://www.cnblogs.com/qneverever/p/4500023.htmlOracle是一个数据库管理系统,是Oracle公司的核心产品。其在数据安全性与安整性控制方面的优越性能,以及跨操作系统、跨硬件平台的数据操作能力。基于“客户端/服务       器”(Client/Server)系统结构。主要特点:1.支持多用户、大事务量的事务处理。2....

2019-03-04 19:45:49 236

转载 SQL之case when then用法

转自:https://www.cnblogs.com/Richardzhu/p/3571670.htmlcase具有两种格式。简单case函数和case搜索函数。--简单case函数case sex when '1' then '男' when '2' then '女’ else '其他' end--case搜索函数case when sex = '1' then '男'...

2019-03-04 19:44:31 129

转载 数据库的一个表里筛选出每一人的时间最新的一条记录

-- 方法1 select a.* from table1 a where not exists(select 1 from table1 b where b.name=a.name and b.gdtime&gt;a.gdtime) ...

2019-03-04 19:39:11 3173

转载 Oracle的排序和限制条件(order by 和where)

转自:https://www.cnblogs.com/yzqm666/p/5854527.html1、Order by子句的使用select column....from ....order by ...1) Order by子句在整个select语句中的位置:始终位于最后2) order by后可以跟什么:列名,...

2019-03-04 19:37:50 1948

转载 JVM调优总结

转自:https://www.cnblogs.com/andy-zhou/p/5327288.html#_caption_0目录数据类型堆与栈Java对象的大小引用类型按照基本回收策略分按分区对待的方式分按系统线程分如何区分垃圾如何处理碎片如何解决同时存在的对象创建和对象回收问题为什么要分代如何分代什么情况下触发垃圾回收分代垃圾回收流程示意选择合适的垃圾收集算法小结回收器选择辅助信息常见配...

2019-03-04 19:36:06 118

转载 获取两个日期之间的日期形成一个集合

转自:https://www.cnblogs.com/huhongy/p/7278087.html/** * @auth huhy 2017-7-28 * @param start 起始日期 * @param end 结束日期 * @return */public static List&lt;String&gt; getDate(String start,String...

2019-03-04 19:33:09 486

转载 ORACLE中函数MONTHS_BETWEEN的使用

转自:https://www.cnblogs.com/pumushan/p/6655204.html格式:MONTHS_BETWEEN(DATE1,DATE2)MONTHS_BETWEEN函数返回两个日期之间的月份数。SQL&gt; select months_between(to_date('20090228', 'yyyymmdd'), to_date('20080228', 'y...

2019-02-27 19:57:47 21761

转载 页面自动执行js的3种方法

转自:https://www.cnblogs.com/chenlove/p/8643383.html1.最简单的调用方式,直接写到html的body标签里面:&lt;html&gt; &lt;body onload="load();"&gt; &lt;/body&gt; &lt;/html&gt;2.在JS语句调用:&lt;script type="tex...

2019-02-27 19:56:06 4266

原创 Java截取字符串的常见方法

转自:https://blog.csdn.net/zjx2016/article/details/74557301在项目中经常会遇到截取字符串的需求,这里重点介绍两种常见的截取字符串方法。方法一:通过split()将正则传入split()。返回的是一个字符串数组类型。不过通过这种方式截取会有很大的性能损耗,因为分析正则非常耗时。String str = "53285964@qq.co...

2019-02-27 19:54:44 120639 1

转载 JAVA数据类型转换大全

转自:https://blog.csdn.net/ching_zhi/article/details/536739891)将字符串转化为整型;int i = Integer.parseInt(String str);int i = Integer.valueOf(String str).intValue();注:Integer.parseInt和 Integer.valueO...

2019-02-27 19:52:46 931

转载 js中return的用法

转自:https://blog.csdn.net/sweetllh/article/details/70306737一、函数返回值,并终止函数的运行语法:return 表达式;在函数语句结束时执行,并返回表达式的值作为函数的结果;比如:function foo(obj){var resultObj=obj//可对传入参数进行处理.return resultObj;}1...

2019-02-27 19:50:08 14462

转载 Oracle中的substr()函数 详解及应用

转自:https://www.cnblogs.com/dshore123/p/7805050.html1)substr函数格式 (俗称:字符截取函数)  格式1: substr(string string, int a, int b);  格式2:substr(string string, int a) ;解释: 格式1: 1、string 需要截取的...

2019-02-27 19:47:38 536

转载 【html标签 表单隐藏域】input表单隐藏域及其使用方法

转自:https://blog.csdn.net/dengpeng0419/article/details/55045047一、表单隐藏域隐藏域是用来收集或发送信息的不可见元素,对于网页的访问者来说,隐藏域是看不见的。当表单被提交时,隐藏域就会将信息用你设置时定义的名称和值发送到服务器上。&lt;span style="color:#000000"&gt;&lt;code&gt;代码...

2019-02-27 19:43:13 10417

转载 JDBC之事务、批量处理

转自:https://blog.csdn.net/qq_34983808/article/details/78074615事务的4个特性:/* tips: 原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)*/数据库事务使用过程:/** JDBC 数据库事务操作 ...

2019-02-27 19:10:25 366

转载 JDBC的PreparedStatement启动事务使用批处理executeBatch()

转自:https://blog.csdn.net/xiong9999/article/details/53258698JDBC使用MySQL处理大数据的时候,自然而然的想到要使用批处理,普通的执行过程是:每处理一条数据,就访问一次数据库;而批处理是:累积到一定数量,再一次性提交到数据库,减少了与数据库的交互次数,所以效率会大大提高至于事务:事务指逻辑上的一组操作,组成这组操作的各个...

2019-02-27 19:07:30 3451

转载 JDBC事务控制管理

转自:https://blog.csdn.net/caomiao2006/article/details/224127551、事务(1)事务的概念事务指逻辑上的一组操作,组成这组操作的各个单元,要不全部成功,要不全部不成功。例如:A——B转帐,对应于如下两条sql语句updateaccountsetmoney=money-100wherename=‘a’;upd...

2019-02-27 18:51:18 146

空空如也

空空如也

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

TA关注的人

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