自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(168)
  • 资源 (12)
  • 收藏
  • 关注

原创 窗口函数OVER(PARTITION BY)详细用法——语法+函数+开窗范围ROWS和RANGE

窗口函数OVER(PARTITION BY)详细用法,PARTITION BY写法,ROWS和RANGE的区别,各种函数共功能说明

2022-10-01 22:28:01 329

原创 IDEA Maven下载依赖时报错: ERROR - #org.jetbrains.idea.maven - Cannot reconnect.

IDEA Maven下载依赖时报错: ERROR - #org.jetbrains.idea.maven - Cannot reconnect. Caused by: java.rmi.RemoteException: Cannot start maven service; nested exception is: java.rmi.ConnectException: Connection refused to host: 127.0.0.1; nested exception is:

2022-09-29 17:25:30 67

原创 IDEA旧版本下载地址

Other Versions - IntelliJ IDEAGet past releases and previous versions of IntelliJ IDEA.https://www.jetbrains.com/idea/download/other.html

2022-09-28 09:10:35 44

原创 Linux Nginx版本升级方案

Linux Nginx版本升级方案 nginx-1.16.1 升级 为nginx-1.21.1

2022-08-18 11:06:38 82

转载 解决MySQL导入数据量大速度慢问题

解决MySQL导入数据量大速度慢问题

2022-08-17 16:25:00 679

原创 Linux chage 命令用法

Linux chage命令用法,chage用于密码的实效管理,用来修改帐号和密码的有效期。

2022-06-22 11:26:30 378

原创 MySQL5.7 设置密码策略(等保三级密码改造)

MySQL 5.7.21 密码策略配置,至少一个大写、至少一个小写、至少一个数字、至少一个字符、长度至少9位、60天密码过期。

2022-06-20 10:16:15 1466

原创 Linux CentOS7 服务器密码策略配置修改

CentOS密码策略配置

2022-06-17 14:43:16 1352

原创 Java如何判断对象已死亡?

Java如何判断对象已死亡? GC Roots对象有哪些?

2022-05-12 15:33:07 160

原创 面试官:介绍下Spring MVC

1、介绍下SpringMVCSpringMVC是一种基于MVC设计模式的Web框架。SpringMVC通过注解,让简单的Java类成为处理请求的控制器,而无需实现任何接口。同时它还支持RESTful编程风格请求。在B/S架构中系统的标准三层架构为表现层、业务层、持久层。表现层就是常说的Web层,负责接收客户端请求,向客户端相应结果,表现层设计一般都使用MVC模型。MVC指模型、视图、控制器。模型,指数据模型,用于封装数据;视图,用于展示数据,通常是依据模型数据创建的;

2022-05-09 16:05:24 337

原创 Java面试 讲讲extends和super关键字

讲讲extends和super关键字这个涉及到泛型的三个特性,不变性、协变性、逆变性。比如有类Long和类Number,类Long继承于类Number。Long是可以赋值给Number的,但若加一个函数ArrayList后,对于Long的ArrayList就不能赋值给Number的ArrayList了,这个就是泛型的不变性。若想让Long的ArrayList就赋值给Number的ArrayList就需要利用泛型的协变性,加上函数ArrayList后依然保持继承关系,即ArrayList<L

2022-05-08 17:41:09 250

原创 Java 泛型中 <? extends T> 与 <? super T> 的区别

逆变与协变用来描述类型转换(type transformation)后的继承关系,其定义:如果A、B表示类型,f(⋅)表示类型转换,≤表示继承关系(比如,A≤B表示A是由B派生出来的子类)f(⋅)是不变(invariant)的,当A≤B时上述两个式子均不成立,即f(A)与f(B)相互之间没有继承关系。f(⋅)是协变(covariant)的,当A≤B时有f(A)≤f(B)成立;f(⋅)是逆变(contravariant)的,当A≤B时有f(B)≤f(A)成立;1.泛型的不变性下面看个例子:

2022-05-08 16:36:22 364

原创 Java泛型 <T> T 的作用

<T> T 表示返回值和传入参数的泛型型一致,代码示例:package GenericStudy;import java.util.ArrayList;import java.util.List;/** * @description: java泛型返回值 <T>T 的作用 **/public class Demo2 { public static void main(String[] args) { Demo2 d1 = new Demo2(...

2022-05-06 22:52:26 542

转载 @JsonInclude(value=JsonInclude.Include.NON_NULL)含义

​在实体类上面加@JsonInclude(value=JsonInclude.Include.NON_NULL)注解,可以使当前实体类在返回前端的时候忽略字段属性为null的字段,使其为null字段不显示。加注解前和加注解后效果:

2022-05-05 16:12:09 254

原创 HashMap为什么会发生死循环

HashMap死循环只会在JDK1.7中出现,出现的原因主要是因为其自身扩容机制加上并发操作。JDK1.8中已彻底解决该问题。JDK1.7中HashMap以数组加链表的方式存储,在插入数据是采用的是头插法,新插入的数据会从链表的头结点进行插入。因此在HashMap扩容时会存在如下现象:...

2022-04-27 22:53:13 1563

转载 Spring Bean生命周期中各阶段的作用及实例演示说明

本文分两个部分第一部分 解释SpringBean生命周期中各接口作用第二部分 对SpringBean生命周期中各接口的执行顺序以Demo形式进行说明

2022-04-16 15:37:28 189

转载 Spring Bean的五个作用域

Spring支持五个作用域:singleton、prototype、request、session、global session

2022-04-15 11:19:22 359

原创 JDK9 String优化

JDK9 对String优化,将char数组改为byte数组并增加了coder属性

2022-04-14 23:48:55 392

原创 多线程-三种方法判断线程池中任务有没全部执行完

多线程-三种方法判断线程池中任务有没全部执行完

2022-04-14 16:29:54 1852

原创 面试官:说一下Java类的加载过程

类的加载分为三个部分:加载、连接、初始化1.加载1)类的加载通过类的全限定名将.class文件的二进制字节流读入内存(JDK1.7之前为JVM内存,JDK1.8后为本地内存)2)在堆中为之创建Class对象。在这个阶段读入二进制字节流,会在后续验证阶段验证.class文件,验证通过后会将二进制字节流转化为运行时数据结构存入方法区拓展:在JDK1.7之前,Hot Spot JVM 存在一块叫方法区的内存,也称之为永久代,这块区域用于存放类的元数据信息,包括类的字段、版本、方法等。JDK1

2022-04-13 15:33:55 1008

原创 为什么不允许使用Executors创建线程池

线程池-为什么不允许使用Executors创建线程池其替代方法是什么?

2022-04-05 11:29:59 1024

原创 线程池-exectue与submit的区别是什么?

线程池-exectue与submit的区别是什么?

2022-04-04 22:59:23 604

原创 线程池-Executors的newSingleThreadExecutor和newFixedThreadPool(1)区别

与其他等效的newFixedThreadPool(1)不同,newSingleThreadExecutor返回的执行器保证不可重新配置。与其他等效的newScheduledThreadPool(1)不同,newSingleThreadScheduledExecutor返回的执行器保证不可重新配置以使用其他线程。newFixedThreadPool(1)的返回结果我们可以通过强转变成ThreadPoolExecutor,但是这个类是可以自行指定线程数的。我们可以通过setCorePoolSize.

2022-04-04 22:02:44 584

原创 线程池-jdk1.8 Executors创建线程池的几种方法

线程池-java线程池有几种?

2022-04-04 21:17:55 673

原创 举例说明为什么要重写hashCode()和equals()方法

1.未重写hashCode()和equals()方法import java.util.HashMap;import java.util.Map;public class User { private String userName; public User(String userName) { this.userName=userName; } public static void main(String[] args) {

2022-04-04 19:49:20 173

转载 String +的实现原理 及与StringBuilder的区别

在Java中String的操作很多时候都与连接符"+"有关,比如我们可以用String = int + "" 将一个int整数或是其他基本类型转为String类型,也可以用String = String + String 连接两个字符串。那么这些连接符具体是如何实现的呢?他们的效率又如何呢?首先我们可以在API文档上查阅到:Java 语言提供对字符串串联符号("+")以及将其他对象转换为字符串的特殊支持。字符串串联是通过 StringBuilder(或 StringBuffer)类及其 append

2022-03-31 22:19:37 110

原创 @Transactional类内部访问失效原因详解

Spring之所以可以对开启@Transactional的方法进行事务管理,是因为Spring为当前类生成了一个代理类,然后在执行相关方法时,会判断这个方法有没有@Transactional注解,如果有的话,则会开启一个事务。也就是说我们首先调用的是AOP代理对象而不是目标对象,首先执行事务切面,事务切面内部通过TransactionInterceptor环绕增强进行事务的增强,即进入目标方法之前开启事务,退出目标方法时提交/回滚事务。Spring在扫描bean的时候,如果扫描到方法上有这些注解

2022-03-31 17:09:33 2251 1

原创 @Transactional 失效的几种情况

一、非public修饰的方法@Transactional注解只能在在public修饰的方法下使用。/** * 私有方法上的注解,不生效 */@Transactionalprivate boolean test() { //test code}二、类内部访问类内部非直接访问带注解标记的方法 B,而是通过类普通方法 A,然后由 A 调用 B。@Servicepublic class Demo { public void A() { ...... .

2022-03-31 16:55:29 1676

转载 SpringMVC 组件类及处理过程

1、SpringMVC 组件类有哪些?在了解SpringMVC各组件之前,我们先来看一下Spring MVC框架结构:从上图我们可以看到, Spring MVC主要包括:1. 前端控制器组件(DispatcherServlet)2. 处理器组件(Controller)3. 处理器映射器组件(HandlerMapping)4. 处理器适配器组件(HandlerAdapter)5. 拦截器组件(Handler...

2022-03-27 22:03:50 46

转载 拦截机制中Aspect、ControllerAdvice、Interceptor、Fliter之间的区别详解

在项目的开发中,在某些情况下,我们需要对客户端发出的请求进行拦截,常用的API拦截方式有Fliter,Interceptor,ControllerAdvice以及Aspect。Spring中的拦截机制,如果出现异常的话,异常的顺序是从里面到外面一步一步的进行处理,如果到了最外层都没有进行处理的话,就会由tomcat容器抛出异常.1.过滤器:Filter :可以获得Http原始的请求和响应信息,但是拿不到相应方法的信息2.拦截器:Interceptor:可以获得Http原始的请求和响应信息,

2022-03-27 15:57:30 363

转载 spring boot 自动配置

我们知道,spring boot自动配置功能可以根据不同情况来决定spring配置应该用哪个,不应该用哪个,举个例子:Spring的JdbcTemplate是不是在Classpath里面?如果是,并且DataSource也存在,就自动配置一个JdbcTemplate的Bean Thymeleaf是不是在Classpath里面?如果是,则自动配置Thymeleaf的模板解析器、视图解析器、模板引擎那个这个是怎么实现的呢?原因就在于它利用了Spring的条件化配置,条件化配置允许配置存在于应用中,但是在

2022-03-27 15:36:27 58

原创 Springboot 配置文件加载优先级

springboot 启动会扫描以下位置的application.properties或者application.yml文件作为Spring boot的默认配置文件–file:./config/–file:./–classpath:/config/–classpath:/优先级由高到底,高优先级的配置会覆盖低优先级的配置。我们还可以通过spring.config.location来改变默认的配置文件位置项目打包好以后,我们可以使用命令行参数的形式,启动项目的时候来指定配置文件的新位.

2022-03-24 21:18:42 492

转载 如何在Spring Boot启动的时候运行一些特定的代码?

如果你想在Spring Boot启动的时候运行一些特定的代码,你可以实现接口ApplicationRunner或者CommandLineRunner,这两个接口实现方式一样,它们都只提供了一个run方法。ApplicationRunner:启动获取应用启动的时候参数CommandLineRunner:启动获取命令行参数目录Spring Boot Runner启动器:ApplicationRunnerCommandLineRunner使用方式启动顺序Spring

2022-03-20 10:57:26 1089

原创 实现反射的3+1种方式

1、Class.forName(“类的路径”);2、类名.class3、对象名.getClass()+1、基本类型的包装类,可以调用包装类的Type属性来获得该包装类的Class对象那么Integer.class和Integer.TYPE的区别是什么呢?int.class返回Integer的对象Integer.type返回int对象public static void main(String[] args) {System.out.println(Integer.TYPE

2022-03-10 21:13:08 131

转载 @PostConstruct

简介:Java EE5规范开始,Servlet中增加了两个影响Servlet生命周期的注解,@PostConstruct和@PreDestroy,这两个注解被用来修饰一个非静态的void()方法。@PostConstruc使用说明:PostConstruct 注释用于在依赖关系注入完成之后需要执行的方法上,以执行任何初始化。此方法必须在将类放入服务之前调用。支持依赖关系注入的所有类都必须支持此注释。即使类没有请求注入任何资源,用 PostConstruct 注释的方法也必须被调用。只有一个

2022-02-22 11:23:14 61

转载 Lombok - 使用时@Builder为什么不让new?如果想用new怎么办

对象上加上 @Builder,会默认为类加上全参构造函数,且提供以建造器模式构造对象的方法。但此时因为显示声明了构造器,默认的无参构造器就失效了,就不能通过 new Obj() 的方式创建对象。于是乎就会想到加 @NoArgsConstructor 注解生成无参构造函数以便使用 new Obj() 方式创建对象,很多框架中都需要反射调用无参构造函数。但是如果显式声明了 @NoArgsConstructor,lombok 就不会生成全参构造函数,而 @Builder 中会用到全参构造函数,所以冲突。此

2022-02-22 10:50:28 684

原创 Linux 批量杀进程

1.查需要杀死的进程ps -ef | grep yum2.去除掉里面的grepps -ef | grep yum | grep -v grep3.打印kill命令ps -ef | grep yum | grep -v grep | awk '{print "kill "$2}'4.执行kill命令ps -ef | grep yum | grep -v grep | awk '{print "kill "$2}' | sh删除完成...

2022-01-20 16:23:07 2618

原创 log要用占位符而不是用字符串拼接原因解析

1.占位符是怎么用字符串替换的呢?使用占位符的本质也是获取每个参数,找到位置通过StringBuilder拼接。所以不能说字符串拼接的方式使用了StringBuilder的append()有一定的性能损耗。使用占位符仅是替换动作,效率更高。可以参考这篇文章的源码截图(关于Slf4j中占位符{}_Firm陈的博客-CSDN博客)2.那为什么还要使用占位符呢?参考这篇文章(日志使用占位符还是直接拼接 - 简书)占位符和直接拼接的性能比较通过main方法for循环测试

2022-01-19 20:04:42 1629

原创 实操:Zabbix添加mysql监控模板配置

1.添加mysql模板2.然后发现不支持,需要配置一下

2022-01-17 11:29:11 803

原创 SpringBoot2.0 入门案例初始工程

一、工程创建流程1.创建maven工程2.引入依赖pom.xml如下:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache

2022-01-11 13:02:44 220

autojs4.1.1合集.zip

包含:Auto.JS 4.1.1 (免费版)、 4.1.1打包插件。 官网链接:https://hyb1996.github.io/AutoJs-Docs

2021-02-07

二维码批量识别解码python脚本

二维码批量识别解码py脚本, 将需要扫描的二维码放到一个文件夹下,修改python路径即可。 使用到 import os import zxing 这个是因做ctf题碰见很多二维码需要识别而做的。

2020-09-28

CnPlugin_1.5.1.zip

安装LSQL Developer后发现电脑打字特别特别特别的卡,后来发现只有打开PLSQL Developer后电脑才会卡顿,而且只有打字的时候才会卡。 win10中 plsql 的 Plugin 版本不兼容,将其换为 CnPlugin。 原来 Plugin 文件下有名为 CnPlugin 的文件不要管他,将 D:\PLSQL Developer 9\ 下的 Plugin 删掉,然后将新的 CnPlugin 放入D:\PLSQL Developer 9\ 下。

2020-07-25

PLSQL Developer 9.rar + instantclient-basic-nt-11.2.0.4.0.zip

PLSQL Developer 9.rar 和 instantclient-basic-nt-11.2.0.4.0.zip 其中PLSQL为免安装版。

2020-07-25

解决 Flash cs4 安装之后打不开 启动界面总是一闪而过

在下载完flash cs4安装后,打开运行出现一个红框闪一下就没了,原因是Windows中缺少一种msmincho.ttc字体,因此无法打开该软件。下载之后将msmincho.ttc字体文件复制到 本地磁盘C:\Windows\Fonts 中粘贴就会自动安装。

2020-05-25

AD603中文资料.pdf

AD603中文资料 AGC电路常用于RF/IF电路系统中,AGC电路的优劣直接影响着 系统的性能。因此设计了 AD603和AD590构成的3〜75dBAGC电路,并 用于低压载波扩频通信系统中的数据集中器。

2020-02-27

同济大学数学建模竞赛本科组赛题论文.pdf

同济大学数学建模竞赛本科组赛题论文 计算生物学是一门处理基因组数据并从中获取屯物佶息的学科。其典型问题 是通过反转(reversal)、转位(transposition)、移位(translocation)三种 基因组M组操作的次数来计算基因组间的重组距离。但是,汁箅生物学中的大部 分都是NP-hard的,大部分计算生物学的学者致力于设计多项式时间内的近似算 法。但由于近似筧法在实际生物基因数据的处理时有可能计算出不精确的信息, 因此需要应用参数化算法来计算求解。

2020-02-27

能耗数据,约五年的能耗数据

采样周期15min,12月份整月的能耗数据,部分如下 addtagdata.txt中的:MT_001:0;MT_002:5;MT_003:0;MT_004:30;MT_005:15;...MT_365:6;MT_366:1;MT_367:134;MT_368:10;MT_369:159;MT_370:3837; data.log中为原始数据根据需求自己处理

2019-11-25

spark-1.6.0-bin-hadoop2-without-hive.tgz

hive2.1.0 --- spark1.6.0 hive on spark的spark包,这个是已经经过./make-distribution.sh --name "hadoop2-without-hive" --tgz "-Pyarn,hadoop-provided,hadoop-2.4,parquet-provided"编译后的了spark-1.6.0-bin-hadoop2-without-hive.tgz

2019-11-20

jdk+旧java版本下载地址.rar

jdk-6u31-windows-x64.exe 和旧java版本下载地址 javaSE(12 -5)

2019-06-03

scala-intellij-bin-2016.3.6、2018.2.1 、2018.3.5

scala-intellij-bin-2016.3.6.zip 、scala-intellij-bin-2018.3.5.zip 、scala-intellij-bin-2018.2.1.zip 三个,根据自己的intellij选一下安装

2019-04-10

空空如也

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

TA关注的人

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