自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JAVA三大特性

JAVA三大特性封装继承多态封装在面向对象程式设计方法中,封装(英语Encapsulation)是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法。封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。要访问该类的代码和数据,必须通过严格的接口控制。封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性。封装的优点良好的封装能够减少耦合。类内部的结构可以自由修改。可

2021-10-29 14:40:57 84

原创 JAVA线程池ThreadPoolExecutor简介

ThreadPoolExecutor简介ThreadPoolExecutor线程池的7个参数ThreadPoolExecutor执行流程ThreadPoolExecutor注意事项ThreadPoolExecutor线程池的7个参数1.corePoolSize核心线程数,int类型,不能小于0。这个参数代表线程池中存活最小的线程数。2.maximumPoolSize线程池最大线程数量,int类型,得大于0,而且不小于corePoolSize。这个线程池中最多允许有maximumPoolSize个线程

2021-10-19 16:39:43 124

原创 volatile如何防止重排序

volatile如何防止重排序什么是重排序在不影响单线程程序执行结果得前提下,计算机为了最大限度得发挥机器性能,会对机器指令重排序优化重排序会遵循as-if-serial与happens-before原则as-if-serial语义不管怎么重排序(编译器和处理器为了提高并行度),(单线程)程序的执行结果不能被改变。编译器,runtime和处理器都必须遵守as-if-serial语义。为了遵守as-if-serial语义,编译器和处理器不会对存在数据依赖关系的操作做重排序,因为这种重排序的话会改

2021-09-03 16:47:06 539

原创 volatile为何不保证原子性

volatile为何不保证原子性我们先写个简单得例子,如下图:这里我用了10个线程,每个线程都执行1万次num++,希望结果是10万,但是结果却是小于等于10万。我们画个图解释一下这是因为什么,如果看不懂得话可以先看一下我上一篇得,里面解释了每步得具体流程链接: https://blog.csdn.net/weixin_38818613/article/details/119804684这是我简单画得,如下图:我只画了两个线程说明一下,线程1和线程2得执行逻辑应该是这样得:1.线程1和线程

2021-08-25 11:34:29 140

原创 volatile如何保证可见性

volatile如何保证可见性?首先要了解一下JMM(java内存模型)原子操作,如下:1.read(读取):从主内存读取数据2.load(载入):将主内存的数据写入工作内存3.use(使用):从工作内存读取数据计算4.assign(赋值):将计算好的值重新赋值到工作内存中5.store(存储):将工作内存的值写入主内存6.write(写入):将store过去的变量值赋值给主内存中的变量7.lock(锁定):将主内存变量枷锁,标识未线程独占状态8.unlock(解锁):将主内存变量解锁,解

2021-08-24 15:53:05 4540 2

原创 Sql Server单表分区

Sql Server单表分区由于数据中单表数据过千万,影响插入查询等效率。最简单的方式就是把表分区,这样不用改动代码,只需要在数据库中几步就可以操作好,省时省力。我拿我们数据库中的一个日志表为例子,是用时间进行分区的。这个表Sys_AccessLog中的数据有 三千多万条。首先第一步,创建分组。这里我是创建了9个组。alter database [ODC] add filegroup Sys_AccessLog_1alter database [ODC] add filegroup Sys_Acc

2021-08-06 14:53:28 307

原创 spring boot + sharding-jdbc + sqlserver整合

spring boot + sharding-jdbc + sqlserver最近因为数据库表中数据量过大,超过千万级别得表又用得比方多,要是自己手动写分表汇总得算法工作量比较大,所以研究了一下sharding-jdbc。网上都是用得mysql数据库得,用SQL server数据库得比较少,所以我用SQL server写了个简单得demo,记录一下。首先用得是springboot (2.3.2.RELEASE)sharding-jdbc(4.1.1) + mybatis(2.1.1)+druid(1

2021-06-07 19:56:33 1563 1

空空如也

空空如也

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

TA关注的人

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