`
文章列表
版本号 x.y.z :   其中z 表示一些小的bugfix, 更改z的号,   y表示一些大的版本更改,比如一些API的变化   x表示一些设计的变动及模块的重构之类的,会升级x版本号   在package.json里面dependencies依赖包的版本号前面的符号有两种,一种是~,一种是^。     ~的意思是匹配最近的小版本 比如~1.0.2将会匹配所有的1.0.x版本,但不匹配1.1.0 ^的意思是最近的一个大版本 比如1.0.2 将会匹配 所有 1.x.x, 但不包括2.x.x   ———————————————— 版权声明:本文为CSDN博主「emi ...
收藏地址,方便以后学习   2018年度最受欢迎中国开源软件评选: https://www.oschina.net/project/top_cn_2018 2019年度最受欢迎中国开源软件评选: https://www.oschina.net/project/top_cn_2019
1. 对于创建的多列索引(复合索引),不是使用的第一部分就不会使用索引        alter table student add index my_index(name, age)   // name左边的列, age 右边的列         select * from student where name = 'aaa'     // 会用到索引        select * from student where age = 18          //  不会使用索引 2. 对于使用 like 查询, 查询如果是 ‘%aaa’ 不会使用索引,而 ‘aaa%’ 会使用到索引。 ...
1. 什么是 java.awt.headless? Headless模式是系统的一种配置模式。在系统可能缺少显示设备、键盘或鼠标这些外设的情况下可以使用该模式。 2. 何时使用和headless mode? Headless模式虽然不是我们愿意见到的,但事实上我们却常常需要在该模式下工作,尤其是服务器端程序开发者。因为服务器(如提供Web服务的主机)往往可能缺少前述设备,但又需要使用他们提供的功能,生成相应的数据,以提供给客户端(如浏览器所在的配有相关的显示设备、键盘和鼠标的主机)。   3. 如何使用和Headless mode? 一般是在程序开始激活headless模式,告诉程 ...
该方法只做了一件事:设置了一个名为java.awt.headless的系统属性,源码如下: private void configureHeadlessProperty() { System.setProperty(SYSTEM_PROPERTY_JAVA_AWT_HEADLESS, System.getProperty( SYSTEM_PROPERTY_JAVA_AWT_HEADLESS, Boolean.toString(this.headless))); } 其中: SYSTEM_PROPERTY_JAVA_AWT_HEADLESS="jav ...
 StopWatch是位于org.springframework.util包下的一个工具类,通过它可方便的对程序部分代码进行计时(ms级别),适用于同步单线程代码块。 正常情况下,我们如果需要看某段代码的执行耗时,会通过如下的方式进行查看: public static void main(String[] args) throws InterruptedException { StopWatchTest.test0(); // StopWatchTest.test1(); } public static void test0() throws Inter ...
/** * @author niuxd * @title: Test * @date 2020/7/14 12:45 */ public class Test { public static void main(String[] args) { int[] arr = {6, 9, 1, 5, 9, 4, 2}; //查找第k小的奇数 String kStr = "2"; int k ; try{ k=Integer.parse ...
SpringCloud分布式开发五大组件详解   1、服务发现——Netflix Eureka 2、客服端负载均衡——Netflix Ribbon 3、断路器——Netflix Hystrix 4、服务网关——Netflix Zuul 5、分布式配置——Spring Cloud Config

mysql处理IP地址

  SELECT INET_ATON('111.204.26.226'); SELECT INET_NTOA('1875647202'); MySQL 数据库内置了两个 IP 相关的函数 INET_ATON()、INET_NTOA(),可以实现 IP 地址和整数的项目转换。   因此,我们使用 INT UNSIGNED(占用 4 个字节)存储 IP,非 Char(15)。占 15 个字节。   将 IP 的存储从字符型转换成整形,转化后数字是连续的,提高了查询性能,使查询更快,占用空间更小。  
为什么不强制停止?而是通知、协作 对于 Java 而言,最正确的停止线程的方式是使用 interrupt。但 interrupt 仅仅起到通知被停止线程的作用。而对于被停止的线程而言,它拥有完全的自主权,它既可以选择立即停止,也可以选择一段时间后停止,也可以选择压根不停止。那么为什么 Java 不提供强制停止线程的能力呢?   事实上,Java 希望程序间能够相互通知、相互协作地管理线程,因为如果不了解对方正在做的工作,贸然强制停止线程就可能会造成一些安全的问题,为了避免造成问题就需要给对方一定的时间来整理收尾工作。比如:线程正在写入一个文件,这时收到终止信号,它就需要根据自身业务判断 ...

wait与sleep区别?

对于sleep()方法,该方法是属于Thread类中的。而wait()方法,则是属于Object类中的。 sleep()方法导致了程序暂停执行指定的时间,让出cpu给其他线程,但是他的监控状态依然保持者,当指定的时间到了又会自动恢复运行状态。 在调用sleep()方法的过程中,线程不会释放对象锁。 而当调用wait()方法的时候,线程会放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象调用notify()方法后本线程才进入对象锁定池准备获取对象锁进入运行状态。
乐观锁:每次去拿数据的时候,都认为别人不会修改,不会加锁,但在更新的时候会去判断一下,此期间别人有没有更新数据,版本号机制和CAS算法就用到乐观锁,参考了https://blog.csdn.net/u011381576/article/details/79922538;   举一个版本号的例子,   数据表中除了数据还有一个version字段,更新数据时version字段会加一,   假设线程A在读取数据和version(version = 1)的期间,有另一个线程B也读取了version(version = 1),   线程A修改数据,更新version(version = 2), ...
并发编程三要素 (1)原子性 原子性指的是一个或者多个操作,要么全部执行并且在执行的过程中不被其他操作打断,要么就全部都不执行。   (2)可见性 可见性指多个线程操作一个共享变量时,其中一个线程对变量进行修改后,其他线程可以立即看到修改的结果。   (3)有序性   有序性,即程序的执行顺序按照代码的先后顺序来执行。    
Redis默认提供了16个数据库(database),每个数据库有一个id,从0到15,他们没有名字,只有id。 可以在Redis配置文件中修改数据库个数,使用以下配置: databases 32 代表启动时提供32个数据库。 客户端登录Redis时默认登录的是id为0的数据库。 不同的数据库中数据隔离保存。 使用select id命令可以切换当前数据库,比如: 切换数据库后Redis命令行会有数据库id的标识,另外,0号数据库不显示标识。 FLUSHALL命令会清空所有数据库中的数据库,不只是当前数据库。 spring-boot可以在配置文件中设置默认登录的数据库: s ...
volatile关键字的两层语义一旦一个共享变量(类的成员变量、类的静态成员变量)被volatile修饰之后,那么就具备了两层语义:1)保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了某个变量的值,这新值对其他线程来说是立即可见的。2)禁止进行指令重排序。
Global site tag (gtag.js) - Google Analytics